0

我试图公开从 ADO.NET 对象(从数据库创建)创建的对象。

当我尝试从服务返回这些对象之一时,所有对象的字段都是 0。

这是服务合同:

[ServiceContract(Namespace="http://www.thatindigogirl.com/samples/2006/06")]
public interface IMFileService
{
    [OperationContract]
    File GetFile();
}

下面是实现服务契约的类型:

public class MFileService : IMFileService
{
    public File GetFile()
    {
        using (FileEntities ctx = new FileEntities())
        {
            File aFile = (from f in ctx.Files
                          where f.ID == 5
                          select f).FirstOrDefault();       // No connection string named 'FileEntities' could be found in the application config file.
            return aFile;
        }
    }
}

这是我的客户代码:

    EndpointAddress ep = new EndpointAddress("http://localhost:8000/MFileService/MFileService");

    IMFileService proxy = ChannelFactory<IMFileService>.CreateChannel(new BasicHttpBinding(), ep);
    File f = proxy.GetFile();
    Console.WriteLine("File info: " + f.Name + ", " + f.ID + ", " + f.ParentDirectory + ", " + f.Size);
    Console.ReadLine();

我不确定为什么提琴手看不到对数据库的请求、响应或从主机到客户端的消息。

ADO.NET 对象甚至允许这样的事情吗?还是必须先创建自己的类并将 ADO.NET 对象数据放入其中,然后再通过网络发送?

4

0 回答 0