Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linq to sql 串联LINQ查询结果_Linq To Sql - Fatal编程技术网

Linq to sql 串联LINQ查询结果

Linq to sql 串联LINQ查询结果,linq-to-sql,Linq To Sql,想知道我是否可以有条件地将表中4个不同字段的LINQ查询结果(这些字段是每个记录的标志)连接到1个字符串中,所以应该是这样的: dbContext.CONTACT_LOGs.Select( e => new (e => new ContactLog { rec1 = e.Recommend1 ? "1 is recommended" : String.Empty,

想知道我是否可以有条件地将表中4个不同字段的LINQ查询结果(这些字段是每个记录的标志)连接到1个字符串中,所以应该是这样的:

            dbContext.CONTACT_LOGs.Select( e => new 
            (e => new ContactLog
            {
                rec1 = e.Recommend1 ? "1 is recommended" : String.Empty,   
                rec2 = e.Recommend2 ? "2 is recommended" : String.Empty,
                rec3 = e.Recommend3?  "3 is recommended" : String.Empty,
                rec4 = e.Recommend4 ? "4 is recommended" : String.Empty
                //this doesn't work in a single query
                ContactSummary = String.Concat(rec1, rec2, rec3, rec4)
            });


            public class ContactLog
            {
            public string rec1 { get; set; }
            public string rec2 { get; set; }
            public string rec3 { get; set; } 
            public string rec4 { get; set; } 
            public string ContactSummary { get; set; }


    }

有没有办法以那种方式做到这一点?谢谢

我不确定是否理解您的问题,但我只想向您的
ContactLog
类添加一个新属性,如下所示:

public class ContactLog {
   public string rec1 { get; set; }
   public string rec2 { get; set; }
   public string rec3 { get; set; } 
   public string rec4 { get; set; } 
   public string ContactComments { get; set; }
   public string ContactLog {
      get {
         return String.Concat(rec1, rec2, rec3, rec4);
      }
   }
}

不需要给linq查询增加负担

你能说得更清楚一点或提供一个例子吗?你有没有理由不能只在
ContactLog
中添加一个新属性,然后在那里进行连接而不是linq查询?是的,如果我正确理解了你的问题,这就是我要做的,这似乎符合我的需要,但唯一的问题是,正如您从上面的代码片段中看到的,有时它们可能是空的,在这种情况下,我想将它们从串联中排除,但如果所有标志都为true,我需要在该摘要字符串中获得“1,2,3,4推荐值”