Лучшая практика при проектировании службы WCF, чтобы разбить свой проект на отдельные узлы:
Ассамблеи SomeProject.ServiceContract
Эта сборка содержит ваш контракт на обслуживание (только интерфейсы).
Пример:
[ServiceContract (...)]
public interface ICan {
[ServiceOperation (...)]
void EatCandies (MyListOfCandies candies);
}
SomeProject.DataObjects Сборочные
Эта сборка содержит все объекты данных, который используется вашим договором на обслуживание.
Пример:
[DataObject]
public class MyListOfCandies : List<Candy> {
...
}
В вашем проекте, который потребляет ваш веб-службы ссылку на сборку «SomeProject.DataObjects», а затем добавить веб-сервис. Вы увидите, что Visual Studio больше не будет создавать какие-либо объекты-заглушки, но будет использовать вашу реализацию.
Вы можете сделать то же самое с сборкой ServiceContract. Таким образом, вы по-прежнему можете использовать веб-службы, но при изменении интерфейса вы получите ошибки компиляции.
Что такое 4IP3? Это добавлено в коллекцию? Я никогда этого не делал раньше. –
Да, когда я создаю файл .cs из svcutil.exe, он будет ссылаться на мою собственную коллекцию примерно так: –
Чтобы объяснить больше, я хочу выставить свою собственную коллекцию из своего веб-сервиса .. Как я могу это сделать ... Обычай класс коллекции находится в отдельной сборке, на которую ссылается мой WebService (WCF) –