, поэтому я, наконец, закончил кэширование в службе WCF. В любом случае, теперь это мой интерфейсметод экспонирования в wcf-сервисе
[ServiceContract]
public interface IService1
{
[OperationContract]
IEnumerable<Screen_Data> GetData(DateTime d);
}
и это мой класс, который реализует этот интерфейс
[AspNetCompatibilityRequirements(RequirementsMode =
AspNetCompatibilityRequirementsMode.Allowed)]
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall)]
public class Service1 : IService1
{
[AspNetCacheProfile("CacheFor2Minutes")]
[WebGet(UriTemplate = "?DateTime={DateTime}")]
public IEnumerable<Screen_Data> GetData(DateTime d)
{
ScreenScrapingEntities1 db = new ScreenScrapingEntities1();
IEnumerable<Screen_Data> sd = from p in db.Screen_Data
where p.DateTime > d
select p;
return sd;
}
}
Это screen_data является таблица базы данных, и я произвел ADO.NET Entity Model данных из базы данных ,
Вопрос в том, когда я пытаюсь вызвать этот метод у клиента WCF, передающего значение datetime, он должен вернуть более 10 строк. Я не уверен, как я могу вернуть эти строки из этого метода, может ли кто-нибудь помочь мне с этим кодом, который я написал в классе, он даже не принимает лямбда-выражения в запросе linq.
И это, как я называю этот метод GetData
от клиента
DateTime t = DateTime.Parse("2012-05-31 11:38:29.070");
ServiceReference1.Service1Client client = new ServiceReference1.Service1Client();
client.GetData(t);
этот класс генерируется при создании модели
[EdmEntityTypeAttribute(NamespaceName="ScreenScrapingModel", Name="Screen_Data")]
[Serializable()]
[DataContractAttribute(IsReference=true)]
public partial class Screen_Data : EntityObject
{
}
Я советую написать собственный класс screen_data с атрибутами [data member]. или я не знаю, но в поколениях ado должно быть сериализуемое свойство – levi
хорошо этот экранный класс данных, в котором я создаю модель из базы данных, она автоматически попадает под datacontract, позвольте мне отредактировать вопрос и показать, что к u –
что является вашим вопрос? вам нужно помочь для чего? вы получаете какое-либо исключение? или вызов службы не возвращают ничего? – Damith