无法在数据源中找到属性

本文关键字:属性 数据源 | 更新日期: 2023-09-27 18:34:19

我正在尝试将 tu 将 AccessDataSource 绑定到 ASP.NET 中的 GridView。我的访问数据源由两个表组成,假设:

Table Data, Table Modifications

我从我的访问数据源中选择数据的查询如下

SELECT Data.*, IIF(ISNULL(Modifications.Comments), ' ', Modifications.Comments) AS Comments,
               IIF(ISNULL(Modifications.Disengagement), 0, Modifications.Disengagement) AS Disengagement
               FROM (Data LEFT OUTER JOIN Modifications ON Data.[Project Number] = Modifications.[Project Number])

我使用Visual Studio中的查询生成器来验证上一个查询的输出,一切正常。

表"数据"中的每个字段都很好,不会导致引发异常。例如,这将正常工作,因为"金额"列来自"数据"表。

<asp:BoundField DataField="Amount"
        HeaderText="<%$Resources:i18n, Column_Amount %>" 
        SortExpression="Amount" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="1%" />

从这一点开始,一切都很好,我继续前进,所以我在我的 GridView 中创建了一个边界字段,其中包含来自"修改"的数据。[脱离接触]",像这样:

<asp:BoundField DataField="Disengagement"
    HeaderText="<%$Resources:i18n, Column_Disengagement %>" 
    SortExpression="Disengagement" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="1%" />

但是我似乎无法访问"修改"表中的任何列,当我启动网页时,出现如下错误:

System.Web.HttpException: Unable to find property 'Disengagement' in the selected data source.

我已经仔细检查了我的列的名称和代码中的变量名称,我将继续这样做,如果必须的话,三重检查,但我认为问题来自其他地方。

你们有什么想法吗?

无法在数据源中找到属性

我找到了我的问题。我通过单击按钮在代码中启动了另一个查询,并且该查询没有得到良好的数据。我已经解决了这个问题,并将实现一个类似"单例"的解决方案来管理我的代码中的查询字符串。