将SQL查询结果映射到C#Object

时间:2016-01-18 07:38:50

标签: c# sql wcf object ado.net

我正在寻找可以帮助我使用WCF将查询结果映射到我的c#对象的任何资源。以前,我在LINQ工作,但我需要在没有LINQ的情况下完成。所以我想知道是否有人可以用一个例子来解释如何在没有LINQ的情况下实现相同的目标。我用谷歌搜索,但找不到初学者的好例子。任何帮助都会非常感激。

我有一个产品类

devices_secondary_activities

我想通过WCF服务调用调用存储过程public class Product { public int ProductId { get; private set; } public string Code { get; private set; } public string ProductName { get; private set; } } usp_Get_Products

使用LINQ我会在Service.svn.cs文件中这样做

ADO.NET

1 个答案:

答案 0 :(得分:1)

如果使用[Serializable]属性标记您的类,则WCF将为您执行翻译。您可以在配置中指定您希望序列化的方式。 XML是默认设置,但要添加对JSON的支持,您只需将其添加到配置

即可

代码中的重要位(我总是忘记它是否是Serializable或DataContract,所以我最终都使用它们):

[Serializable, DataContract]
public class Product
{
    public int ProductId { get; private set; }
    public string Code { get; private set; }
    public string ProductName { get; private set; }
}

WCF配置中的重要位是将JSON的默认行为提供给WCF端点(如果需要):

  <behaviors>
    <endpointBehaviors>
      <behavior name="setJsonDefault" >
        <webHttp defaultOutgoingResponseFormat="Json" />
      </behavior>
    </endpointBehaviors>
  </behaviors>

然后您只需将该行为应用于您的端点(而不是服务)。您现在可以将其作为客户端配置应用于存储过程,它应该可以工作。只需创建一个客户端,就可以了。