【c# – LINQ和参考列表问题】教程文章相关的互联网学习教程文章

c# – 如何使用linq使用hibernate queryover连接两列【代码】

我想在select子句中连接Employee的firstname和lastname,但是它给出了:Could not determine member from new <>f__AnonymousType0`1(name =Format(“{0} {1}”, x.FirstName, x.LastName))var returnData = UnitOfWork.CurrentSession.QueryOver<Employee>().OrderBy(x => x.Id).Asc.SelectList(u => u.Select(x => x.Id).WithAlias(() => businessSectorItem.id).Select(x => new { name = string.Format("{0} {1}",x.FirstName, ...

c# – 使用linq [list]将列表列表转换为单个列表【代码】

参见英文答案 > How to merge a list of lists with same type of items to a single list of items? 4个我是具有相同类型对象的列表列表,我正在尝试将其转换为使用linq的所有对象的单个列表. 我怎样才能做到这一点? 这是我目前的代码:var allTrackAreas =_routables.Select(routable =>_centrifugeHelper.GetTrackAreasFromRoutable(routable, _trackAreaCutterParameters,_allowedDestinat...

c# – 如何使用Linq获取不在一段时间内的前两个连续日期时间点?【代码】

我有一个日期时间值列表.我想获得前两个连续的日期时间值使用Linq驻留在时间范围之外.我不知道该怎么做. 示例数据(可以复制到LinqPad:List<DateTime> list = new List<DateTime>{DateTime.Parse("07/08/2014 01:00 AM"), DateTime.Parse("07/08/2014 02:00 AM"),DateTime.Parse("07/08/2014 03:00 AM"),DateTime.Parse("07/08/2014 04:00 AM"),DateTime.Parse("07/08/2014 05:00 AM"),};DateTime blackoutStartTime = DateTime.Pa...

c# – Linq的三元操作符【代码】

var result = from payroll in currentMonthPayrollselect new SalaryDifference{PreviousMonthSalary = previousMonthPayroll.Where(t => t.EmployeeId == payroll.EmployeeId).FirstOrDefault() == null ?default(decimal) : previousMonthPayroll.Where(t => t.EmployeeId == payroll.EmployeeId).FirstOrDefault().Salary,};有没有办法不重复previousMonthPayroll.Where(t => t.EmployeeId == payroll.EmployeeId).FirstOrDefa...

c# – LINQ任何失败?【代码】

是否有任何理由为什么以下代码中的Any函数可能会失败?var orders = db.Order.Where(order => order.Item.Any()); foreach (var order in orders) {var first = order.Item.First(); // NullReferenceException thrown here: order.Item == null }也许我只是在这里误解了一些东西,但在我看来,order.Item永远不会因为早期的Any语句而为null. 编辑:如果我确保表达式被评估而不是通过在那里放置ToList而延迟,我得到另一个异常,因为o...

C#Linq找到重复的行【代码】

人Name CityJoe Houston Jerry London Alex Houston Jerry London 如何使用LINQ返回重复行 SQLSELECT name, city, count(*) FROM collection GROUP BY name,city HAVING count(*) > 1我试了一下var qry =from m in context.Collectionsgroup m by new { m.city, m.name } into grpselect new { rp = grp.Count() > 2 };解决方法:你需要一个地方,而不是一个选择:var qry = ...

c# – LINQ lambda表达式替换字符串中的多个字符?【代码】

是否有可能编写一个lambda表达式,它将迭代对象数组并替换其中一个属性中的’X’,’Y’,”和’Z’的所有出现? 例如.return query.Select(x => { x.SomePropertyName= x.SomePropertyName.Trim().Replace(' ', "_"); return x; }).ToList();出于某种原因,当我需要替换多个字符时,上面的查询不会替换单个字符. 谢谢解决方法:当我想用一个单独的其他字符替换多个字符中的一个时,我经常使用string.Split和string.Join的组合:char[] un...

c# – Linq:如果列名中有空格,DataTable select不起作用?【代码】

我想从DataTable中选择行.选择条件包括anding和列名称有空格b / w它们如下所示:int distributionLineIdex = import.VendorInvoiceLineDetailTable.Select ("Number='AMEX0311_00011' and Line number='001'").Count();我收到以下异常:Syntax error: Missing operand after 'number' operator.我在这里错过了什么?解决方法:使用[Line Number] = '001'代替

c# – 将简单的ForEach转换为Linq语句【代码】

我是一个SQL开发人员,所以Linq(和C#一般)对我来说有点陌生,但是我有一个简单的foreach循环,我认为Linq查询可能会更好.即使手头的问题不是特别困难,如果没有别的东西,这将是一个有用的东西.这是我的代码:bool fireAgain = true; foreach (var connMan in Dts.Connections) {Dts.Events.FireInformation( 0, "", String.Format("Connection Manager {0} has connection string {1}", connMan.Name, connMan.ConnectionString), "", ...

c# – LINQ中的速度提升Where(Array.Contains)【代码】

我最初有一个包含返回int []的LINQ查询的方法,后来以类似于以下的方式使用它:int[] result = something.Where(s => previousarray.Contains(s.field));事实证明这是非常缓慢的,直到第一个数组被检索为本机IQueryable< int>.它现在运行得非常快,但是我想知道如果我从其他地方提供了一个int []然后必须如上所述使用它我将如何处理这种情况. 在这种情况下有没有办法加快查询速度?转换为列表似乎没有帮助.解决方法:在LINQ-SQL中,Cont...

c# – 在foreach循环中的Resharper,linq【代码】

在底部示例中,Resharper建议使用顶部示例.但是我的印象是首先会创建一个新的项目列表,因此所有_executeFuncs都将在调用runstoredprocedure之前运行. 这通常不是问题,但是容易发生异常,如果我的假设是正确的,那么尽管已经运行了函数,我的数据库也不会更新?foreach (var result in rows.Select(row => _executeFunc(row))){ RunStoredProcedure(result)}要么foreach(var row in rows){var result = _executeFunc(...

c# – 使用LINQ比较两个数组【代码】

例如,我有两个数组:string[] arrayOne = {"One", "Two", "Three", "Three", "Three"}; string[] arrayTwo = {"One", "Two", "Three"};var result = arrayOne.Except(arrayTwo);foreach (string s in result) Console.WriteLine(s);我想要来自arrayOne的items在arrayTwo中不存在.所以在这里我需要结果:三个三但我没有得到任何结果,因为它将“三”视为常见而不检查其他两项(“三”,“三”). 我不想写一个巨大的方法来解决这个问题....

C#WebApi重构选择Linq【代码】

我目前正在Visual Studio 2015中编写C#Web Api.我实际上是在复制很多代码.public class APIController : ApiController {[HttpGet][Route("api/drones")]public HttpResponseMessage getDrones(){var drones = db.drones.Select(d => new DroneDTO{iddrones = d.iddrones,//more stuff});HttpResponseMessage res = Request.CreateResponse(HttpStatusCode.OK, drones);return res;}[HttpGet][Route("api/drones/{id}")]public Htt...

C#使用动态属性创建对象:LINQ选择按属性名称数组列出值【代码】

class OriginalObject{public string str1 {get;set;}public string str2 { get; set; }public string str3 { get; set; }public string str4 { get; set; }}class Program{static void Main(string[] args){ List<OriginalObject> obj = new List<OriginalObject>();obj.Add(new OriginalObject(){str1 ="hi",str2 = "hello",str3 = "how",str4 = "r u"});obj.Add(new OriginalObject(){str1 = "i",str2 = "am",str3 =...

c# – 无法将类型’Newtonsoft.Json.Linq.JObject’转换为复杂类型【代码】

我有json如下,{"H": "Macellum","M": "Receive","A": [{"CustomerId": "172600","OrderId": "69931","OrderStatus": "E0","Buy": "A"}] }和复杂的类型public class OrderStats {public string CustomerId { get; set; }public string OrderId { get; set; }public string OrderStatus { get; set; }public string Buy { get; set; } }我正在尝试铸造如下,dynamic obj = JsonConvert.DeserializeObject<dynamic>(message); OrderSta...