Tag: linq

在C#中将对象数组转换为XML

我知道没有内置转换器将对象数组转换为XML。 有没有一种快速的基本方法来从数组中创建XML来帮助我在这个和另一个XML之间进行LINQ to XML连接?

Foreach Razor里面的Foreach

我正在尝试编写一个foreach循环,它将找到每个不同的类别类型,然后列出具有该类别分配的每个Title。 例如: @model IEnumerable @{ ViewBag.Title = “Home”; } @foreach (var item in Model) { @Html.DisplayFor(modelItem => item.ProgramType.ProgramType) foreach (var listing in Model) { @Html.DisplayFor(modelItem => listing.ProgramTitle) } } 调查回复模型: public class SurveyProgramModel { [Key] public int ProgramId { get; set; } public int ProgramYear { get; set; } public int ProgramStatusId { get; set; […]

如何使用LINQ从字符串中删除字符

我有一个类似的字符串 XQ74MNT8244A 我需要删除字符串中的所有char 。 所以输出就像 748244 这该怎么做? 请帮我这样做

如何使用MySQL Connector / NET在深度为2的对象图上使用Entity Framework?

以下是Oracle确认的错误报告: http : //bugs.mysql.com/bug.php?id = 67183 情况 当我在我的存储库中使用.Include链时,我注意到我得到了奇怪的结果 – 主要是被查询的返回值来自错误的字段(例如,名称最终会出现在描述中 – 但在数据库中所有的值是正确的,它们只在查询后显示错误)。 我更改了名称,因此关系更加明显,但结构是一样的。 我不断为相关的CrewMember及其相对排名和清除得到错误的值。 看起来如果CrewMember中的字段名称与Rank相同,则Rank中该字段的值将变为CrewMember中的值。 例如,如果Rank有描述,CrewMember也是如此,那么CrewMember的Rank描述将是CrewMember的描述。 当由于MySQL Connector / NET sql提供程序无法正确形成join语句而导致类似字段定义时,entity framework无法在2的深度处形成格式良好的查询。 定义 这是一个为数据库表建模的类定义。 我正在使用C#ASP.NET MVC 3与Entity Framework 4.1和MySQL Connector / NET 6.5版 public class Harbor { public int HarborId { get; set; } public virtual ICollection Ships { get; set; } public string Description […]

找到具有最大值属性的元素的速度更快

通常,要找到具有最大值属性的元素,我喜欢这样 var itemWithMaxPropValue = collection.OrderByDescending(x => x.Property).First(); 但从性能的角度来看,这是好方法吗? 也许我应该做这样的事情? var maxValOfProperty = collection.Max(x => x.Property); var itemWithMaxPropValue = collection .Where(x => x.Property == maxValueOfProperty).First();

C#Linq字符串与indexOf进行比较

我有一个表,其中包含一个包含主机名的字符串字段。 它们大多是完全合格的域名,但多年来第一个“点”之后的域位已经改变,因为各种DNS变化已经落在我们身上。 所以我可能将表中的机器“tom”作为: tom.company.com tom.it.company.com tom.newComapnyBranding.com … 我经常要对“当前”主机名和这个历史商店进行比较。 做类似的事情: WHERE UPPER(SUBSTRING(@foo, 1, CHARINDEX(“.”, @foo))) = UPPER(SUBSTRING(myDB.myTable.machineName, 1, CHARINDEX(“.”, myDB.myTable.machineName))) 好吧,我试图将其中一个转换为Linq查询,但我在“索引”部分磕磕绊绊。 我差一点接近: myTable.machineName.ToUpper().Substring(0, myTable.machineName.IndexOf(“.”)) .Equals(foo.ToUpper().Substring(0, foo.IndexOf(“.”))) 但是visual studio正在抱怨“IndexOf”。 它声称我需要将IndexOf更改为: IndexOf(“.”, StringComparison.Ordinal)) 但是当我运行它时,我收到exception消息: LINQ to Entities does not recognize the method ‘Int32 IndexOf(System.String, System.StringComparison)’ method, and this method cannot be translated into a store expression 你如何在Linq中使用这种基于索引的子字符串?

如何序列化原始json字段?

我在db中有一个存储json字符串的字段,当我在json结果中返回它时,我想要它将作为json原始数据返回,而不是用引号作为字符串扭曲。 更新1(更多信息):如果您查看图像字段,它包含原始的json字符串值 但是在用JsonResult序列化之后,它会被引号扭曲,因为它是一种String类型,我怎么能告诉序列化器将图像字段视为原始json数据呢? var db = new ModelsContainer(); var res = db.Images.OrderByDescending(i=>i.DateCreated).Skip(skip).Take(take).Select( i => new { id = i.Id, dateCreated = i.DateCreated, images = i.Images , user = new { id = i.User.Id, facebookId = i.User.FacebookId, displayName = i.User.DisplayName }, tags = i.Tags.Select( t => t.Value ) }).ToList(); return Json(res, JsonRequestBehavior.AllowGet); [ { “id”:”5c528e88-f3a7-4b30-9746-980867325fd1″, “dateCreated”:”\/Date(1364381593000)\/”, […]

使用数字值对字符串列表进行排序

我有一个字符串列表,这很可能,但不保证包含数字列表,即, {“1”, “6”, “2”, “21”, “89”} 排序字符串列表的方式是什么,以便始终按升序显示? 在进行排序之前,我无法先将字符串解析为数字,因为字符串可以包含非数字字符。 而且我不想浏览列表并将每个组件检查到数字并进行排序。 为此目的,是否已经存在一个库? 在我们有混合数字和非数字字符串项的情况下,数字字符串总是优先于非数字字符串。

更快的替代品.Distinct()

我正在制作一款性能至关重要的video游戏。 我正在使用.Distinct()扩展方法从List获取唯一值。 有更快的方法吗? (即使它意味着有更多的代码行)

Linq选择父对象,其中子对象具有匹配的子对象

我将如何编写一个LINQ语句来选择在其集合中具有匹配子对象的父对象? 这是示例类。 class Parent { int ID { get; set; } string Name { get; set; } List Children { get; set; } } class Child { int ID { get; set; } string Name { get; set; } string Nickname { get; set; } } 在上面的示例中,我想返回包含具有特定昵称的子项的所有父项。