C# 关于DatasourceId和DataSource的查询

C# 关于DatasourceId和DataSource的查询,c#,visual-studio-2010,linq-to-sql,dynamic-data,C#,Visual Studio 2010,Linq To Sql,Dynamic Data,有两张桌子 EmpInf EmpId, EmpName, Salary, DepartNumber. Dept DeptNo, Deptname, 我有一个linqdatasource控件,例如 <asp:LinqDataSource ID="LinqDataSource1" runat="server" EntityTypeName="" ContextTypeName="FilterControl.DataClasses1D

有两张桌子

EmpInf
    EmpId,
    EmpName,
    Salary,
    DepartNumber.

Dept
    DeptNo,
    Deptname,
我有一个
linqdatasource控件
,例如

<asp:LinqDataSource ID="LinqDataSource1" runat="server" EntityTypeName="" 
    ContextTypeName="FilterControl.DataClasses1DataContext" EnableDelete="True" 
    EnableInsert="True" EnableUpdate="True" OrderBy="DeptName"  
    TableName="Dept1s" Select="new (DeptNo, DeptName)">
</asp:LinqDataSource>
并尝试在整个动态数据中实现此
列表视图
,并使用
动态数据管理器控件

<asp:DynamicDataManager ID="DynamicDataManager1" runat="server" >
<DataControls>
<asp:DataControlReference ControlID="ListView1" />
</DataControls>
</asp:DynamicDataManager>

在运行时,它抛出一个异常,它显示使用
DataSourceID=“LinqDataSource1”或在后端使用数据源a。删除其中一个。
执行此操作时,过程中不会返回任何内容。我该怎么跑,需要建议。谢谢你的帮助

解决此问题的一种方法是从ListView控件中删除DataSourceID,并在page_load中绑定数据

protected void Page_Load(object sender, EventArgs e)
{

   if(!Page.IsPostBack)
   {
      //Bind datasource to ListView here
   }
}

现在一切都应该正常了

FilterControl.DataClasses1DataContext obj=new DataClasses1DataContext(); 受保护的void DropDownList1\u SelectedIndexChanged1(对象发送方,事件参数e) {

        var a = from r in obj.EmpInfs
                join s in obj.Dept1s on r.DeptNumber equals s.DeptNo 
                where r.EmpName ==  DropDownList1.SelectedValue  
                select s;


        listview1.DatasourceId=null;
        ListView1.DataSource = a;
        ListView1.DataBind();



    }

如果有什么不明白的地方,也可以通过在上面的代码中写入
listview.DatasourceId=null
来解决。请告诉我。
protected void Page_Load(object sender, EventArgs e)
{

   if(!Page.IsPostBack)
   {
      //Bind datasource to ListView here
   }
}
        var a = from r in obj.EmpInfs
                join s in obj.Dept1s on r.DeptNumber equals s.DeptNo 
                where r.EmpName ==  DropDownList1.SelectedValue  
                select s;


        listview1.DatasourceId=null;
        ListView1.DataSource = a;
        ListView1.DataBind();



    }