代码之家  ›  专栏  ›  技术社区  ›  Peter Wone

解析SL4 RIA中的关联对象

  •  0
  • Peter Wone  · 技术社区  · 15 年前

    在VS2010中创建了一个标准的Silverlight业务应用程序并从SQL Server数据库建立了一个模型之后,我拥有各种实体和关联,其中AssetGroup和Asset之间的关系为1:m。

    据称,我可以使用点表示法从资产实例中获取关联的AssetGroup。通过延迟执行和延迟加载的现代奇迹,我确信,我的数据将在我需要的时候交付。

    但它不起作用。

    所需的咒语是什么?我必须杀死一只鸡还是一只山羊?

    This 看起来很有前途。我一试用完就更新。

    1 回复  |  直到 15 年前
        1
  •  0
  •   Peter Wone    15 年前

    在这个问题中,我提到了一篇包含可能解决方案的博客文章。这个解决方案是可行的,但需要对生成的代码进行更改,这显然和解决方案一样脆弱。

    下面是一种应用解决方案的可靠方法:更改代码生成器。

    1. 在EDMX设计器图面上,右键单击上下文菜单并选择 添加代码生成项…
    2. 尝试将“model1.tt”作为名称进行改进并保存tt文件。
    3. 打开TT文件。
    4. 搜索“返回”(直接查找需要更改的方法模板)。
    5. 如图所示编辑。
    6. 重新生成解决方案。

    改变这个

    return /* big hairy expression */;
    

    对此

    var entity = /* big hairy expression */;
    if (!entity.IsLoaded) entity.Load();
    return entity;