1

これは私のテーブルです

メッセージ ここに画像の説明を入力してください

ここに画像の説明を入力してください

これは私のGridviewソースです

<asp:TemplateField ShowHeader="False">
            <ItemTemplate>
                <asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" 
                    CommandName="Select" Text="Select"></asp:LinkButton>
                <asp:LinkButton ID="LinkButton2" runat="server" CausesValidation="False" 
                    CommandName="Delete" Text="Delete"></asp:LinkButton>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField HeaderText="RecipientID" SortExpression="Person.LastName">
            <ItemTemplate>
                <asp:Label ID="Label1" runat="server" Text='<%# Bind("Person.LastName") %>'></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
        <asp:BoundField DataField="Subject" HeaderText="Subject" 
            SortExpression="Subject" />
        <asp:BoundField DataField="Message1" HeaderText="Message" 
            SortExpression="Message1" />
        <asp:BoundField DataField="Status" HeaderText="Status" 
            SortExpression="Status" />
        <asp:BoundField DataField="Date" HeaderText="Date" SortExpression="Date" />
        <asp:TemplateField HeaderText="SenderID" SortExpression="Person.LastName">
            <ItemTemplate>
                <asp:Label ID="Label2" runat="server" Text='<%# Bind("Person.LastName") %>'></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>

これが結果です ここに画像の説明を入力してください

送信者の名前を表示するのを手伝ってもらえますか?:)よろしくお願いします!エンティティデータソースを使用しています

アップデート

ユーザーCarloとしてログインしています

ここに画像の説明を入力してください

送信者は、メッセージテーブルに実際の送信者ではなくログインしているユーザーを表示します

これは私のエンティティモデルです

ここに画像の説明を入力してください

4

2 に答える 2

1

これに必要なナビゲーションプロパティはすでにありますが、それらの名前はその役割を隠しています。送信者の名前を取得するために使用Message.Personします。同様に、ユーザーMessage.Person1が受信者の名前を取得することもできます。

プロパティの名前をそれぞれ、に、に名前をPerson変更Person1SenderますRecipient。したがって、それらはプリミティブ外部キー名SenderIDとに一致しRecipientIDます。Person.Messages同様に、プロパティの名前をMessagesSentとに変更できますMessagesReceived

Sender.LastNameテンプレートでは、とを使用できますRecipient.LastName

于 2013-03-14T09:37:40.967 に答える
0

このクエリを使用する

select m.MessageID,m.ReceipientID,m.Subject,m.senderID,p.UserName,p.FirseName from Message m inner join Person p on m.SenderID= p.ID
于 2013-03-14T08:44:11.150 に答える