C# CS0029 после простого изменения пространства имен? ⇐ C#
C# CS0029 после простого изменения пространства имен?
У нас есть программное обеспечение для финансового учета, построенное на так называемой платформе Tornado, которая, в свою очередь, построена на MS Visual Studio 2008. Поэтому, пожалуйста, имейте в виду нашу устаревшую версию Visual Studio. Мы не можем его обновить. На платформе Tornado есть такое понятие, как отчет пользователя. Это специальные отчеты, применимые там, где стандартных отчетов недостаточно. Обычно они создаются путем копирования и изменения стандартных отчетов. Решение для отчетов разделено на три проекта: клиент, интерфейс и сервер. Пользовательские отчеты обычно создаются путем копирования содержимого каждого из этих трех проектов в соответствующие проекты пользовательского отчета, а затем изменения каждого файла .cs, заменяющего стандартное пространство имен (например, Parus.Business.SalaryBudget) на собственное пространство имен (например, ParusPerm. Статистический отчет). Незначительные несоответствия, возникающие из-за этого, обычно легко исправить, добавив префикс пространства имен к некоторым идентификаторам и/или добавив директивы «using». Я несколько раз конвертировал стандартный отчет в пользовательский отчет, и у меня не возникло никаких проблем.
На этот раз у меня новая проблема, и я не знаю, как с ней справиться. Все, что я сделал, это скопировал несколько файлов .cs из проекта стандартного интерфейса в проект пользовательского интерфейса и изменил пространство имен в скопированных файлах с Parus.Business.SalaryBudget на ParusPerm.ReportStatistical. И теперь я получаю удивительную для меня ошибку: «ошибка CS0029: невозможно неявно преобразовать тип «ParusPerm.ReportStatistical.StatisticalReportingTypesEnum» в «ParusPerm.ReportStatistical.StatisticalReportingTypes»». Ошибка встречается в файле ReportStatisticalAllSettings.cs в нескольких строках кода, например:
ReportingType = StatisticalReportingTypesEnum.Culture; Оба типа (слева и справа от знака равенства) определяются в файле StatisticalReportingTypes.cs следующим образом:
публичный частичный класс StatisticalReportingTypes: Parus.Net.Server.Domains.EnumDomain, IEquatable и
публичное перечисление StatisticalReportingTypesEnum {Здравоохранение, культура, наука, образование, социальная безопасность, спорт,} Я не вижу ничего плохого в этих определениях, а даже если что-то было не так - то почему это не выдало никакой ошибки в исходном проекте интерфейса стандартного отчета? Как я уже сказал, единственная разница между стандартным проектом и пользовательским проектом — это измененное пространство имен в каждом файле .cs. Скачать мое решение для создания отчетов можно здесь (без библиотек): https://disk.yandex.ru/d/rLcj4GeoNI3S1g а с библиотеками здесь: https://disk.yandex.ru/d/UNGXxxXJtg3U8A
Кто-нибудь может подсказать мне, почему возникает ошибка и как ее избежать?
У нас есть программное обеспечение для финансового учета, построенное на так называемой платформе Tornado, которая, в свою очередь, построена на MS Visual Studio 2008. Поэтому, пожалуйста, имейте в виду нашу устаревшую версию Visual Studio. Мы не можем его обновить. На платформе Tornado есть такое понятие, как отчет пользователя. Это специальные отчеты, применимые там, где стандартных отчетов недостаточно. Обычно они создаются путем копирования и изменения стандартных отчетов. Решение для отчетов разделено на три проекта: клиент, интерфейс и сервер. Пользовательские отчеты обычно создаются путем копирования содержимого каждого из этих трех проектов в соответствующие проекты пользовательского отчета, а затем изменения каждого файла .cs, заменяющего стандартное пространство имен (например, Parus.Business.SalaryBudget) на собственное пространство имен (например, ParusPerm. Статистический отчет). Незначительные несоответствия, возникающие из-за этого, обычно легко исправить, добавив префикс пространства имен к некоторым идентификаторам и/или добавив директивы «using». Я несколько раз конвертировал стандартный отчет в пользовательский отчет, и у меня не возникло никаких проблем.
На этот раз у меня новая проблема, и я не знаю, как с ней справиться. Все, что я сделал, это скопировал несколько файлов .cs из проекта стандартного интерфейса в проект пользовательского интерфейса и изменил пространство имен в скопированных файлах с Parus.Business.SalaryBudget на ParusPerm.ReportStatistical. И теперь я получаю удивительную для меня ошибку: «ошибка CS0029: невозможно неявно преобразовать тип «ParusPerm.ReportStatistical.StatisticalReportingTypesEnum» в «ParusPerm.ReportStatistical.StatisticalReportingTypes»». Ошибка встречается в файле ReportStatisticalAllSettings.cs в нескольких строках кода, например:
ReportingType = StatisticalReportingTypesEnum.Culture; Оба типа (слева и справа от знака равенства) определяются в файле StatisticalReportingTypes.cs следующим образом:
публичный частичный класс StatisticalReportingTypes: Parus.Net.Server.Domains.EnumDomain, IEquatable и
публичное перечисление StatisticalReportingTypesEnum {Здравоохранение, культура, наука, образование, социальная безопасность, спорт,} Я не вижу ничего плохого в этих определениях, а даже если что-то было не так - то почему это не выдало никакой ошибки в исходном проекте интерфейса стандартного отчета? Как я уже сказал, единственная разница между стандартным проектом и пользовательским проектом — это измененное пространство имен в каждом файле .cs. Скачать мое решение для создания отчетов можно здесь (без библиотек): https://disk.yandex.ru/d/rLcj4GeoNI3S1g а с библиотеками здесь: https://disk.yandex.ru/d/UNGXxxXJtg3U8A
Кто-нибудь может подсказать мне, почему возникает ошибка и как ее избежать?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
В PHP пространства имен xml переобъявляются при изменении префикса пространства имен.
Anonymous » » в форуме Php - 0 Ответы
- 133 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Сообщение об ошибке CS0029. Как я могу преобразовать тип строки в тип Bool [Duplicate]
Anonymous » » в форуме C# - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-