zoukankan      html  css  js  c++  java
  • Ado.Net Entity : Object doesn’t display linked members (foreign keys)

    I have a simple databasescheme: User, Account. User has 1-to-many relationship with Account.

    I have generated a ado.net entity data model, and I can create users and accounts, and even link them together. In the database the account.user_id is correctly filled, so theoretically I should be able to acces User.Account.ToList() in C# through entity.

    However, When I try to acces User.Account.ToList() I get zero results.

    User user = db.User.First(U => U.id == 1);
    List
    <Account> accounts = user.Account.ToList(); ##count = 0

    When I add the following code before the previous code it suddenly gives me the correct count 2.

     Account account1 = db.Account.First(A => A.id == 1);
     Account account2 
    = db.Account.First(A => A.id == 2);
     User user 
    = db.User.First(U => U.id == 1);
     List
    <Account> accounts = user.Account.ToList(); ##count = 2??

    What am I missing here?

    You should use the ObjectQuery.Include method for this. Your method works also but results in an additional query.

    In your example you would get

    User user = db.User.Include("Account").First(u => u.id == 1);

    You have to figure out whether the string "Account" is correct. Usually it should be prefixed with something like MyEntities. This depends on the namespace of your entities but with a little trial and error you should be able to figure this out.

  • 相关阅读:
    正则表达式
    webfrom 母版页
    repeater的command事件用法
    JVM进程cpu飙高分析
    @Transactional导致无法动态数据源切换
    mysql分页查询优化(索引延迟关联)
    MAC下安装Homebrew 和 @权限的问题
    RabbitMQ安装以及集群部署
    RabbitMQ 延时消息队列
    java 实现生产者-消费者模式
  • 原文地址:https://www.cnblogs.com/ejiyuan/p/1519142.html
Copyright © 2011-2022 走看看