2009-10-13 2 views
1

При создании .NET Риа Library Service Class, VS создаст два проекта: MyRiaServices (на стороне клиента) MyRiaServices.Web (на стороне сервера)частичный класс не может быть создан в библиотеке службы Риа

Пусть моя сущность модель находится в другом проекте: MyData (сущность каркаса)

Есть люди с людьми.

Затем я хочу использовать частичный класс, чтобы расширить эту сущность в следующим образом:

namespace MyData 
{ 
    public partial class Person 
    { 
    //.... 
    } 
} 

Если я делаю это в проекте MyData, это прекрасно.

Но я хочу сделать этот путь в проекте MyRiaServices.Web, чтобы я мог назвать файл как person.shared.cs, но мне не удалось. Это дает мне ошибку сказать конфликт определения класса и т. Д.

Как решить эту проблему?

ответ

0

Вы не можете использовать частичный класс таким образом. Цель ключевого слова partial состоит в том, чтобы позволить двум или более исходным файлам в компиляции внести свой вклад в полный код одного типа. Это позволяет автоматически сгенерированный код, созданный дизайнерами, размещаться в отдельном файле из написанного разработчиком кода, который затем формирует один класс, например Person.

Однако этот мехисим - это время компиляции. У вас не может быть сборки, выставляющей тип partial, который может быть расширен далее с помощью кода, скомпилированного в другую сборку.

См. Определение here.

Смежные вопросы