当前位置:  开发笔记 > 编程语言 > 正文

如何通过WCF使用LinqToSql维护子对象?

如何解决《如何通过WCF使用LinqToSql维护子对象?》经验,为你挑选了1个好方法。

我目前陷入了这个解决方案的设计.

数据层设计包括以下内容:

食谱(父级高级对象)

语言详细信息(名称,语言描述)(很多)

标题(很多)

步骤(很多)

配料(很多)

数量(很多)

程序(很多)

笔记(很多)

我遇到的挑战是如何创建一个数据访问设计,当从WCF SaveRecipe(配方)方法填充对象时,该设计将添加/删除数据库中的子对象?

这一切都源于管理层要求我们在我们的应用程序中添加通信层,现在我们的UI耦合到我们的业务层,而BL直接耦合到DAL,我们基本上需要在BL和DAL之间注入WCF .

我在这篇帖子中读过,使用L2S对WCF来说不是一个好主意,但由于设计不是新的,我们必须使用这种类型的方法,然后一旦我们可以重构大量的方法就离开它UI工作.



1> thaBadDawg..:

如果您尝试使用WCF发送内容,我建议您创建要在域中移动的数据模型.据我所知,你不能序列化IQueryable对象,但你可以创建一组Linq填充然后序列化的类.例如:

[DataContract]
public class Recipe {

    [DataMember]
    public string Name { get; set; }

    [DataMember]
    public string Description { get; set; }

    [DataMember]
    public List Ingredients { get; set; }

}

然后填写

List recipes = (from r in dc.recipe
                           select new Recpie {
                               Name = r.name,
                               Description = r.description,
                               Ingredients = (Linq code to make list of ingredients)
                           }).ToList();

然后用WCF发送列表就变得小菜一碟了.

推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有