Tag: linq

如何将IQueryable 转换为字符串?

我做一个sql查询,它返回一个字符串 – 服务名称。 这是查询: IQueryable query = from Comp in ServiceGroupdb.ServiceGroupes where (Comp.GroupID == groupID) select Comp.Name; 如何从查询中获取字符串?

C#Linq Inner Join

我想选择只有宠物的人。 当我执行查询 var query = from p in people join pts in pets on p equals pts.Owner into grp select new {grp=grp,PersonName=p.FirstName}; 没有宠物的人也被选中。 我的名单是 Person[] prn = new Person[3]; prn[0] = new Person(); prn[0].FirstName = “Jon”; prn[0].LastName = “Skeet”; prn[1] = new Person(); prn[1].FirstName = “Marc”; prn[1].LastName = “Gravell”; prn[2] = new Person(); prn[2].FirstName = […]

例外:为’system.data.sqlclient.sqlconnection’输入初始值设定项?

我无法弄清楚这个例外的问题是什么。 ‘System.Data.SqlClient.SqlConnection’的类型初始值设定项引发了exception 第一次尝试:我正在使用WCF服务来制作一些小应用程序。 它工作正常,我可以正确使用LINQ。 2或3天后。 也许在我关闭Visual Studio并再次加载项目之后。 出现exception。 第二次尝试也一样。 我创建了另一个项目,它工作得很好,直到我做其他事情(我不更改任何代码) SQL Server工作正常,我可以通过SQL Management Studio连接没有问题。 单击Debug error会将我引导至linq文件的连接字符串。 可能是什么问题呢? 我试图搜索但找不到解决这个问题的答案。 谢谢

不能将Descendants()或Elements()与xmlns一起使用

我是使用XML的新手,在尝试从spring.net配置文件中获取特定标记时遇到了一个奇怪的问题。 在尝试使用测试xml文件缩小问题范围后,我发现应用以下代码: List nodes = xmlFile.Descendants(“B”).ToList(); 提供包含以下文件的非空列表: 但是提供带有以下文件的空字符串: 作为属性的文件之间的唯一区别。 我无法想象对此的解释。 谢谢你的帮助。

VB.NET linq group by匿名类型不能按预期工作

我正在玩弄LINQPad附带的一些linq样本。 在“Nutshell中的C#3.0”文件夹中,在Chater 9 – Grouping下,有一个名为“按多个键分组”的示例查询。 它包含以下查询: from n in new[] { “Tom”, “Dick”, “Harry”, “Mary”, “Jay” }.AsQueryable() group n by new { FirstLetter = n[0], Length = n.Length } 我将字符串“Jon”添加到数组的末尾以获得实际的分组,并得出以下结果: 这正是我所期待的。 然后,在LINQPad中,我去了相同查询的VB.NET版本: ‘ Manually added “Jon” from n in new string() { “Tom”, “Dick”, “Harry”, “Mary”, “Jay”, “Jon” }.AsQueryable() _ group by ng = new […]

字符串数组中的LINQ“zip”

假设有两个数组: String[] title = { “One”,”Two”,”three”,”Four”}; String[] user = { “rob”,””,”john”,””}; 我需要在user值为Empty时过滤掉上面的数组,然后将两者连接或压缩。 最终输出应该是: { “One:rob”, “three:john” } 如何使用LINQ完成?

在C#中使用Linq或lambda从数据库中的表中获取X个随机元素

我有一个x用户数据库,我想随机获取所有用户,然后在我的网站上写出50个用户。 现在我只使用.take(50)并检索最新的50个用户。 我希望它从整个表中随机抽取50个,任何想法? 这就是我现在的代码: userList = userList.OrderBy(user => -user.ID).Take(userCount).ToList(); 注意: userlist是我所有用户的列表。 正如你所看到的那样,我现在正在使用lambda和一个名为userCount的变量,在那里我说明要列出多少用户!

如何根据用户输入动态构建和返回linq谓词

对此有点困惑。 基本上我有一个方法,我想返回一个谓词表达式,我可以用作Where条件。 我认为我需要做的就是这样: http : //msdn.microsoft.com/en-us/library/bb882637.aspx但是我有点担心我需要做什么。 方法: private static Expression<Func> GetSearchPredicate(string keyword, int? venueId, string month, int year) { if (!String.IsNullOrEmpty(keyword)) { // Want the equivilent of .Where(x => (x.Title.Contains(keyword) || x.Description.Contains(keyword))); } if (venueId.HasValue) { // Some other predicate added… } return ?? } 用法示例: var predicate = GetSearchPreducate(a,b,c,d); var x = Conferences.All().Where(predicate); 我需要这种分离,以便我可以将我的谓词传递到我的存储库并在其他地方使用它。

适用于匿名类型的IQIeryable

我使用EntityFramework,我正在查询并使用匿名类型返回部分数据。 目前我正在使用IQueryable ,它可以工作,但我想知道这是否是正确的方法,或者是否有其他一些我不知道的返回数据类型。 public IQueryable FindUpcomingEventsCustom(int daysFuture) { DateTime dateTimeNow = DateTime.UtcNow; DateTime dateTimeFuture = dateTimeNow.AddDays(daysFuture); return db.EventCustoms.Where(x => x.DataTimeStart > dateTimeNow & x.DataTimeStart new { y.EventId, y.EventTitle, y.DataTimeStart}); }

LINQ to Entities Union正在抛出错误

我成功完成了以下工作: var transactions = from t in context.Transactions group t.Create_Date_Time by t.Participation_Id into t1 select new { ParticipationId = t1.Key, CreateDateTime = t1.Max() }; var cases = from c in context.Cases group c.Create_Date_Time by c.Participation_Id into c1 select new { ParticipationId = c1.Key, CreateDateTime = c1.Max() }; var interactions = from i in context.Interactions join […]