加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 在所选数据源上找不到具有该名称的字段或属性

发布时间:2020-12-16 04:01:17 所属栏目:asp.Net 来源:网络整理
导读:我有一个实体数据模型,其中包含两个实体“角色”和“用户”.我有一个导航属性,我有一个EntityDataSource和一个GridView. EntityDataSource指向Users实体并具有Include =“Roles”参数. 我在GridView中添加了一个BoundField,它指向RoleName,它是实体Roles的一
我有一个实体数据模型,其中包含两个实体“角色”和“用户”.我有一个导航属性,我有一个EntityDataSource和一个GridView. EntityDataSource指向Users实体并具有Include =“Roles”参数.

我在GridView中添加了一个BoundField,它指向RoleName,它是实体Roles的一个属性.但是,当我执行代码时,我得到上述错误.

我在另一个应用程序中成功使用了非常相似的代码任何想法为什么这不起作用?

这是我的EntityDataSource:

<asp:EntityDataSource ID="EntityDataSource1" runat="server" 
    ConnectionString="name=pbu_checklistEntities" 
    DefaultContainerName="pbu_checklistEntities" EnableDelete="True" 
    EnableFlattening="False" EnableUpdate="True" EntitySetName="Users" Include="Role">
    </asp:EntityDataSource>

这是BoundField:

<asp:BoundField DataField="RoleName" HeaderText="Role" SortExpression="RoleName" />

解决方法

您不能将asp:BoundField用于相关导航属性的属性.您只能使用asp:TemplateField,然后将其作为只读与Eval(非绑定)绑定. BoundFields总是在内部使用Bind,这就是它无法工作的原因.我不得不在不久前解决这个问题:

Columns of two related database tables in one ASP.NET GridView with EntityDataSource

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读