Linq Query не удалось объединить запись двух таблиц

0

Я пытаюсь объединить два запроса linq с помощью Concat. Но когда я компилирую запрос, я получаю две ошибки.

IQueryable 'не содержит определения для "Concat" и лучшего перегрузочного метода расширения "ParallelEnumerable.Concat(ParallelQuery, IEnumerable)" требует приемника типа "ParallelQuery"

Вторая ошибка: метод all code не возвращает все значения пути

Вот мой интерфейс.

[OperationContract]
        [WebInvoke(Method = "GET",
    RequestFormat = WebMessageFormat.Json,
    ResponseFormat = WebMessageFormat.Json,
     //BodyStyle = WebMessageBodyStyle.Bare,
     UriTemplate = "/TranscationDetails/{Account_Number}")]
        string TranscationDetails(string Account_Number);

Вот реализация.

  public string TranscationDetails(string Account_Number)
        {

            using (HalifaxDatabaseEntities context = new HalifaxDatabaseEntities())
            {

                var DepositQuery = from x in context.Current_Account_Deposit
                                   where x.Account_Number == Convert.ToInt32(Account_Number)
                                   select x;

                var WithdrawQuery = from x in context.Current_Account_Withdraw
                                    where x.Account_Number == Convert.ToInt32(Account_Number)
                                    select x;

                var merge = DepositQuery.Concat(WithdrawQuery);//**Error on this line**


            }

        }  
Теги:
linq
entity-framework

1 ответ

1
Лучший ответ

Вам не нужно использовать 2 отдельных запроса, просто создайте один запрос, соединяя 2 таблицы и выберите все необходимые свойства из набора результатов. Затем вы можете поместить его в объект IEnumerable и использовать JSON-сериализатор, чтобы вернуть ответ JSON из результата запроса:

public string TranscationDetails(string Account_Number)
{
     using (HalifaxDatabaseEntities context = new HalifaxDatabaseEntities())
     {
         var CombinedQuery = (from x in context.Current_Account_Deposit
                             join y in context.Current_Account_Withdraw
                             on x.Account_Number equals y.Account_Number
                             where x.Account_Number == Convert.ToInt32(Account_Number)
                             select new { 
                                x.Account_Number,
                                // put other properties here 
                             }).ToList();

         var js = new System.Web.Script.Serialization.JavaScriptSerializer();

         return js.Serialize(CombinedQuery); // return JSON string
     }
}
  • 0
    Какие свойства таблицы мне нужно использовать ?? Является ли пополнение текущего счета или снятие с текущего счета ??
  • 0
    В обеих таблицах у меня есть свойства, такие как номер счета, тип транзакции, сумма, имя владельца счета и т. Д.
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню