1

ASP.NET Web フォームと Entity Framework を使用しています。詳細ビューを使用して単純な挿入フォームを作成しようとしています。この詳細ビューからエントリを編集、削除、または選択したくありません。新しいエントリを挿入するだけです。

挿入では、新しい人を挿入したいです。個人の構造は次のとおりです: 名前、マネージャー、場所

2 つのエンティティ データ ソースがあり、1 つはマネージャーを表し、もう 1 つは場所を表します。InsertItemTemplate には、マネージャーと場所を選択できる 2 つの DropDownLists があります。

私の問題は、DetailsView (DefaultMode = insert) を配置して People エンティティのデータ ソースを追加すると、DetailsView にデータベースからのエントリと、ドロップダウン リストおよび名前フィールドが表示されることです。単純なものが欠けている可能性がありますが、他のエンティティ データ ソースによって作成された DropDownLists を持つ挿入専用の DetailsView を取得できないようです。

 <asp:DetailsView ID="DetailsView1" runat="server" Height="50px" Width="125px" 
        DefaultMode="Insert" AutoGenerateInsertButton="True">
        <Fields>
            <asp:BoundField DataField = "Name" />
            <asp:TemplateField>
                <InsertItemTemplate>
                    <asp:DropDownList DataSourceID = "ManagerEntitySource" runat="server" />
                </InsertItemTemplate>
                <InsertItemTemplate>
                    <asp:DropDownList DataSourceID = "LocationEntitySource" runat="server" />
                </InsertItemTemplate>
            </asp:TemplateField>
        </Fields>
    </asp:DetailsView>
    <asp:EntityDataSource ID="AddEmployeeDataSource" runat="server" 
        ConnectionString="name=SafetyEntities" DefaultContainerName="SafetyEntities" 
        EnableFlattening="False" EnableInsert="True" EntitySetName="Employees">
    </asp:EntityDataSource>
4

1 に答える 1

0

これが役立つかどうかはわかりませんが、挿入モードのみが必要な場合は、AutoGenerateInsertButton プロパティを削除して、Fields プロパティに ShowInsertButton = True の CommandField を追加してみてください。

<asp:DetailsView ID="DetailsView1" runat="server" Height="50px" Width="125px" 
    DefaultMode="Insert">
    <Fields>
        <asp:BoundField DataField = "Name" />
        <asp:TemplateField>
            <InsertItemTemplate>
                <asp:DropDownList DataSourceID = "ManagerEntitySource" runat="server" />
            </InsertItemTemplate>
            <InsertItemTemplate>
                <asp:DropDownList DataSourceID = "LocationEntitySource" runat="server" />
            </InsertItemTemplate>
        </asp:TemplateField>
        <asp:CommandField ShowInsertButton="True" />
    </Fields>
</asp:DetailsView>
于 2013-04-30T01:54:17.377 に答える