作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 WCF/REST Web 服务,我正在考虑使用 Linq to SQL 从中返回数据库信息。
对表进行基本查询并返回行很容易,例如:
[WebGet(UriTemplate = "")]
public List<User> GetUsers()
{
List<User> ret = new List<User>(); ;
using (MyDataContext context = new MyDataContext())
{
var userResults = from u in context.Users select u;
ret = userResults.ToList<User>();
}
return ret;
}
var userResults = from u in context.Users
select new { u.userID, u.userName, u.userType,
u.Person.personFirstname, u.Person.personLastname };
最佳答案
一般来说,您不应该从服务返回域对象,因为如果这样做,您会遇到类似您所发现的问题。域对象旨在描述问题域中的特定实体,通常不适合提供一组特定的数据以从服务调用中返回。
您最好通过创建 data transfer objects 将域实体与服务分离。代表它们,其中仅包含您需要传输的信息。 DTO 将有构造函数,它们接受域对象并复制所需的任何属性值(您还需要一个无参数构造函数以便它们可以被序列化),或者您可以使用像 AutoMapper 这样的对象-对象映射器。 .它们还将具有特定于服务的功能,例如 IExtensibleDataObject和 DataMemberAttributes不适合域对象。这使您的域对象可以独立于您从服务发送的对象而变化。
关于wcf - 在 REST/WCF 服务中将数据集从 LINQ 返回到 SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6834085/
到目前为止,我已经生成了以下代码来尝试将相关数据整合在一起。 但是,使用“+ 7”函数会产生以下问题。 Registration date = '2018-01-01' 它正在推迟 2018-04-0
我已经成功地将我的自定义购物车发布到 PayPal——它处理订单非常漂亮,当收到付款时,它会将数据发回我在配置中指定的 URL。代码基于此处找到的库:http://www.phpfour.com/bl
我是一名优秀的程序员,十分优秀!