Почему asp.net отображает имя таблицы вместо поля таблицы - PullRequest
0 голосов
/ 07 мая 2019

я работаю над проектом и объединяю 3 таблицы, таблицы уже связаны в dbml, но моя проблема в том, что когда я использую список данных, он отображает имена моих таблиц, а не правильные поля, это назначение колледжа, но я попробовал все я знаю, чтобы сделать.

Я пытался объединить их отдельно в диспетчере SQL в VS, но я просто не понимаю, почему это не показывает правильную вещь

 <form id="form1" runat="server">
        <div>
            <asp:LinqDataSource ID="LinqDataSource1" runat="server" ContextTypeName="assign_6_final.DataClasses1DataContext" EntityTypeName="" Select="new (CustomerID, Name)" TableName="Customers">
            </asp:LinqDataSource>
            <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" DataSourceID="LinqDataSource1" DataTextField="Name" DataValueField="CustomerID" OnSelectedIndexChanged="Page_Load">
            </asp:DropDownList>
            <asp:DataList ID="DataList1" runat="server" DataSourceID="LinqDataSource2" Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False" Font-Underline="False" OnSelectedIndexChanged="DataList1_SelectedIndexChanged" OnDataBinding="DataList1_SelectedIndexChanged">
                <ItemTemplate>
                    IncidentID:
                    <asp:Label ID="IncidentIDLabel" runat="server" Text='<%# Eval("IncidentID") %>' />
                    <br />
                    DateOpened:
                    <asp:Label ID="DateOpenedLabel" runat="server" Text='<%# Eval("DateOpened") %>' />
                    <br />
                    DateClosed:
                    <asp:Label ID="DateClosedLabel" runat="server" Text='<%# Eval("DateClosed") %>' />
                    <br />
                    Title:
                    <asp:Label ID="TitleLabel" runat="server" Text='<%# Eval("Title") %>' />
                    <br />
                    Description:
                    <asp:Label ID="DescriptionLabel" runat="server" Text='<%# Eval("Description") %>' />
                    <br />
                    CustomerID:
                    <asp:Label ID="CustomerIDLabel" runat="server" Text='<%# Eval("CustomerID") %>' />
                    <br />
                    Technician:
                    <asp:Label ID="TechnicianLabel" runat="server" Text='<%# Eval("Technician") %>' />
                    <br />
                    Product:
                    <asp:Label ID="ProductLabel" runat="server" Text='<%#  Eval("Product") %>' />
                    <br />
                    <br />
                    <br />
                </ItemTemplate>
            </asp:DataList>
        </div>
        <asp:LinqDataSource ID="LinqDataSource2" runat="server" ContextTypeName="assign_6_final.DataClasses1DataContext" EntityTypeName="" Select="new (IncidentID, DateOpened, DateClosed, Title, Description, CustomerID, Technician, Product)"  TableName="Incidents" Where="CustomerID = @CustomerID">
            <WhereParameters>
                <asp:ControlParameter ControlID="DropDownList1" Name="CustomerID" PropertyName="SelectedValue" Type="Int32" />
            </WhereParameters>
        </asp:LinqDataSource>


        <asp:EntityDataSource ID="EntityDataSource1" runat="server">
        </asp:EntityDataSource>


    </form>
</body>

результат, который я ожидал, состоял в том, что последние 2 пункта, которые продукт и техник выдали бы правильно, но они этого не сделали, и я как-то растерялся, мой учитель сказал, что это распространенная проблема в asp, но я никогда не видел ее

1 Ответ

1 голос
/ 07 мая 2019

Попробуйте использовать следующее и так далее:

 <%# DataBinder.Eval(Container.DataItem,"CustomerID") %>
...