我刚刚安装了membase和.NET的enyim客户端,并读到了一篇文章,其中提到了集成linq的技术:
public static IEnumerable<T> CachedQuery<T>
(this IQueryable<T> query, MembaseClient cache, string key) where T : class
{
object result;
if (cache.TryGet(key, out result))
{
re
我在DAL层使用Linq To Sql Join查询,如何为LinqToSql Join方法自动定义一个返回List<T>?
现在,我必须为每个LinqToSql Join方法的返回值手动定义一个List<CustomViewType>。
是否可以定义如下代码所示List<T>:
public static List<T> GetJoinList()
{
List<T> list = new List<T>();
list = from c in customers
join o
给定一个List<T>,其中T是float/decimal/double,使用LINQ计算所有值的percent change。
这是PercentChange的定义(如果a是zero,则不进行error检查)
static double PercentChange(double a, double b)
{
double result = 0;
result = (b - a) / a;
return result;
}
var list = new List<double>();
list.Add(2.0);
list.Add(2.5)
我试图将两个列表与LINQ进行比较,这两个列表都是同一个类的List<T>,但是它们的值不同。我尝试过各种各样的方法
var result = (from r in list1.All
join r2 in list2 on r.id equals r2.AnotherId
select r).ToList();
但是我得到了错误
'System.Linq.ParallelEnumerable.All<TSource>(System.Linq.ParallelQuery<TSource>, Syst
我有这样的多级列表
public class Rd {
public List<Ru> Ru = new List<Ru>();
}
public class Ru {
public List<Rc> Rc = new List<Rc>();
}
public class Rc {
public List<Rcp> Rcp = new List<Rcp>();
}
public class Rcp {
publi
我使用LINQ在数据库中插入记录。我创建这些记录并使用列表跟踪它们。基于某种逻辑,我从列表中删除了一些记录。(我使用的是同一个DataContext对象)。
当我想在数据库中插入记录时,我会对datacontext对象执行相应的linq表的InsertOnSubmit()和SubmitChanges()。LINQ也插入从列表中删除的记录以及列表中存在的记录。
示例:
//list to keep track of records to insert
List list
// add the records to list
list.add(some records)
//deleted l
我有这样的课程:
public class Person
{
public string Name{get;set;}
public bool IsMarried{get;set;}
public List<Child> Children { get; set; }
}
public class Child
{
public bool Greater5 { get; set; }
public List<MyColor> ListColor { get; set; }
}
public c
因此,基本上,我在C#中实现了一个C#,并且我采用了一个显而易见的方法:使用一个字典对象,它使用一个List作为值。接下来,我需要返回一个键值对的扁平列表:List<KeyValuePair<TKey, TValue>>。使用循环来做这件事并不坏,但是我很好奇如何用Linq来完成这个任务。
我很接近于使用SelectMany函数,但我不太清楚如何从A点到B点,这是我的代码,它没有Linq (减去您不关心的其他位)。
public class MultiDict<TKey, TValue>
{
private Dictionary<TKey, L
我有一个int列表,我想知道是否可以使用Linq创建另一个对象T的列表。
为简化这一问题:
我有这样一个int列表: 1,2,3,4,我希望有(1,2),(2,4),(3,6),(4,8)
通常,没有Linq,我们可以很容易地做到这一点。
public class T
{
int first;
int Second;
public T(int x, int y)
{
first = x;
Second = y;
}
}
class Program
这个问题很让人困惑,但在下面的代码中描述的更加清晰:
List<List<T>> listOfList;
// add three lists of List<T> to listOfList, for example
/* listOfList = new {
{ 1, 2, 3}, // list 1 of 1, 3, and 3
{ 4, 5, 6}, // list 2
{ 7, 8, 9} // list 3
};
*/
List<T> li
我有两个列表:
var list1 = new List<string> { "A", "A", "B", C" };
var list2 = new List<string> { "A", "B" };
我想列出一个列表,像这样
var result = new[] { "A", "C" };
列表是从list1中删除的所有元素,从list2中删除,我不认为有Linq扩展方法,因为Except删除了重复的元素。
非linq的方法是:
var temp
我的代码中有这两个类,还有一个Class2列表。我希望使用LINQ将列表元素按date和ID分组。
public class Class1
{
public string ID;
public int y;
public int z;
}
public class Class2
{
public List<Class1> a;
public int p, q;
public string s;
public DateTime date;
}
我的清单类似于以下内容:
List<Class2> object1 =
我正在使用System.Linq.Dynamic库。是否有一种方法可以使用具有一对多关系的实体。具体地说,我有3节课
class A
{
public int Id {get;set;}
...
...
public Class2 class2 {get;set;}
public ICollection<Another> Bs{get;set;}
}
class Class2
{
public int Id{get;set;}
}
class Another
{
public int Id {get;set;}
}
当关
Caan somone建议我尝试获取的最佳方法(linq to sql,返回要在网格/列表中显示的数据列表等)……它抱怨匿名类型转换,从我的阅读来看,这不是一种优雅的方式。
Public Function GetHistory(ByVal historyId As Integer) As List(Of ?????????)
Using dc As New myDataContext(Application.GetConnection)
Return (From t In dc.ActionTypes, a In t.MyTable Where a.HistoryID
我有一个泛型方法,它使用一系列foreach循环将页面上的所有html控件添加到泛型列表中。是否可以将其转换为LINQ表达式?
private List<T> GetControls<T>() where T : HtmlControl
{
List<T> c = new List<T>();
foreach (HtmlControl c1 in Controls)
{
foreach (HtmlControl c2 in
我正在处理C# 6中的LINQ查询。如果给定的list<int>包含任何Id为list<T>的元素,我会尝试选择列表中的所有元素。
我的模型类以及数据结构如下所示:
public class Project
{
public int ID { get; set; }
public string Title { get; set; }
}
List<Project> projects = projectService.GetProjects();
List<int> bookmarkIds = new List<int>
下面的代码中,Properties是对象T中的属性列表,而entry是T的实例,这是否与Linq等价?
我发现我经常做这样的代码,我想知道是否有一种更简单、更清晰的方法来使用linq来做到这一点。
List<Object> args = new List<Object>();
for (int i = 0; i < Properties.Count; i++)
args.Add(typeof(T).GetProperty(Properties[i]).GetValue(entry));
我使用Linq to Sql获取两个列表的联合。使用List1和List2:
var tr = List1.Union(List2).ToList();
Union运行得很好,但问题是它会检查每一列,并删除一些我想要的行。所以我想知道是否有一种方法可以只基于每个列表的一列执行联合,比如id?
类似于:
var t = List1.id.Union(List2.id).ToList();
这不起作用,但我想知道是否有一种方法可以做到这一点,可以使用LINQ或T-SQL
我一直在使用System.Linq.Dynamic库。是否有一种方法可以使用具有一对多关系的实体。具体地说,我有3节课
class A
{
public int Id {get;set;}
...
...
public Class2 class2 {get;set;}
public ICollection<Another> Bs{get;set;}
}
class Class2
{
public int Id{get;set;}
}
class Another
{
public int Id {get;set;}
}
当关系是一对一关系时,我可
是否有一个很酷的Linq表达式来查找List<List<int>>中的最大int值
目前正在执行以下操作:
int maxValue = 0;
foreach(List<int> valueRow in values)
{
// linq expression to get max value
int value = valueRow.OfType<int>().Max();
if (value > maxValue)
{
maxValue = value;
}
}
我刚刚将我的项目升级到Linq3.5,并认为我有一个完美的.NET使用。我的应用程序有一个窗口管理器,可以在运行时跟踪打开的窗口,我正在尝试添加一个FindOpenWindows泛型方法。到目前为止,我所做的是:
List<Form> openWindows;
public List<T> FindOpenWindows<T>(Predicate<T> constraint)
{
var foundTs = from form in openWindows
问题是,A如何返回B的列表以及所有父代的子代中的所有实体,而不求助于下面的代码类型,我在想,您必须能够在单个linq查询中获得相同的结果。
Class Parent {
public Title,
public children List<B>,
}
data = List<A>
var childLists = from x in x.Parents select x.children;
List<B> output = new List<B>();
foreach (List<B>