Я создал проект библиотеки классов служб RIA, и все идет не так, как я ожидал. Проблема заключается в том, что при добавлении классов обслуживания домена в проект сервера соответствующие классы контекста домена не создаются в клиентском проекте.
Я начинаю с создания нового проекта типа Библиотека классов служб WCF RIA . Сгенерированное решение имеет два проекта: RIAServicesLibrary1
(проект библиотеки классов Silverlight) и RIAServicesLibrary1.Web
(библиотека классов, которая будет содержать службы).
Затем я добавляю новый элемент проекта в RIAServicesLibrary1.Web
типа DomainServiceClass . Я добавляю пример метода, чтобы полученный код класса был:
namespace RIAServicesLibrary1.Web
{
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.ServiceModel.DomainServices.Hosting;
using System.ServiceModel.DomainServices.Server;
// TODO: Create methods containing your application logic.
[EnableClientAccess()]
public class DomainService1 : DomainService
{
[Invoke]
void DoSomething()
{
}
}
}
Затем я генерирую все решение и ... ничего не происходит в клиентском проекте. Папка Generated_Code
пуста, а объект контекста домена для службы здесь отсутствует.
Довольно забавно, если я добавлю новый элемент типа Служба аутентификации домена , он будет работать как положено: в клиентском проекте создается файл RIAServicesLibrary1.Web.g.cs
, содержащий ожидаемый класс AuthenticationDomainService1
.
Так что здесь происходит? Я что-то не так делаю?
Примечание : я использую службы Visual Studio 2010 Ultimate RTM и WCF RIA 1.0.