I am struggling to write a query that depends on the results of two tables, who have their query operations .
Can anyone help me?
My job is:
Public IQueryable & lt; Message & gt; GetMessages (int user_id) {// Receiver ID IQueryable Sharing Messages Receive Receiver Table & lt; MessageReceiver & gt; MessageReceivers = GetMessageReceivers (). Where (Message Receiver => Message Receiver. Receiver_ID == user_id); & Lt; Message & gt; Message = new list & lt; Message & gt; (); Agrech (message receiver message message receiver in receiver) {foreach (message message in data message) {if (message.id == messageReceiver.message_id) {messages.Add (message); }} Return messages back Accessible & lt; Message & gt; (); } Regards, Scott Nimrod
as message recipients Looking at messages loaded with identical data references, we can join the same query.
Public IQueryable & lt; Message & gt; GetMessages (int user_id) {// Receive message recipient tables that receive receiver ID var message Receiver = GetMessageReceivers (). Where (messageReceiver => messageReceiver.receiver_id == user_id); // Receive all the messages received by a user var message = from DataContext in M Include R in message message. Receiver R. on M.id. Choose Message_id; // Return message return message; } The result will be similar to the following: (assuming you are using SQL or LINQ from LINQ with EF with Microsoft SQL Provider) < Pre> select [t 0]. [ID], ... from other columns ... from [Message] AS [T] Inner Join [Message Receiver] AS [T1] On [T] [ID] = [T1]. [Message_id]
Comments
Post a Comment