草庐IT

文字过滤

全部标签

c# - 自动刷新 ICollectionView 过滤器

有什么方法可以自动更新ICollectionView上的过滤器,而无需在进行相关更改时调用Refresh()?我有以下内容:[Notify]publicICollectionViewWorkers{get;set;}此属性中的[Notify]属性只是实现了INotifyPropertyChanged但在这种情况下它似乎没有做任何事情。Workers=newCollectionViewSource{Source=DataManager.Data.Workers}.View;Workers.Filter=w=>{Workerworker=wasWorker;if(w==null)retur

c# - 使用 LINQ 从 C# 中的泛型列表中过滤值的最简单方法

我有两个类(class)。第一个是Person,第二个是Student(继承自Person)。我想过滤一个通用的List并找到所有成绩高于7的Students。我提出了以下解决方案:classPerson{publicstringName{get;set;}}classStudent:Person{publicdecimalGrade{get;set;}}classProgram{staticvoidMain(string[]args){Listpeople=newList();people.Add(newPerson(){Name="John"});people.Add(newStu

c# - 如何在 asp.net 中将参数添加到操作过滤器?

我有以下过滤器属性,我可以像这样将一个字符串数组传递给属性[MyAttribute("string1","string2")]。publicclassMyAttribute:TypeFilterAttribute{privatereadonlystring[]_ids;publicMyAttribute(paramsstring[]ids):base(typeof(MyAttributeImpl)){_ids=ids;}privateclassMyAttributeImpl:IActionFilter{privatereadonlyILogger_logger;publicMyAttr

c# - 奇怪的字符串文字比较

深入学习C#,我遇到了一个关于对象引用相等性的小(奇怪)问题。假设我有两个字符串:Stringa="Helloworld!";Stringb="Bonjourlemonde";boolequals=ReferenceEquals(a,b);//*******************(1)b="Helloworld!";equals=ReferenceEquals(a,b);//*******************(2)(1)为false,这是预期的。引用等于Documentation说ReferenceEqualscomparesinstances然后:为什么(2)返回true?字符

c# - Entity Framework 过滤器 "Expression<Func<T, bool>>"

我正在尝试为EntityFramework列表创建一个过滤方法并更好地理解Expression我有一个这样的测试函数。publicIQueryableFilter(IEnumerablesrc,Expression>pred){returnsrc.AsQueryable().Where(pred);}如果我这样做:context.Table.Filter(e=>e.ID或者这个:context.Table.Filter(e=>e.SubTable.Where(et=>et.ID0&&e.ID一切正常。但是如果我这样做:context.Table.Filter(e=>e.SubTable

c# - EPPlus 自动过滤器仅适用于最后一个电池

我希望标题中的每个单元格都包含一个自动过滤器。下面是我尝试使用的代码,但是autofilter仅在指定的最后一个单元格上设置。例如,如果我注释掉K1的autofilter命令,则创建电子表格时C1是唯一具有自动过滤器。//Headersws.Cells["A1"].Value="ChannelCode";ws.Cells["A1"].AutoFilter=true;ws.Cells["B1"].Value="DrmTerrDesc";ws.Cells["B1"].AutoFilter=true;ws.Cells["C1"].Value="IndDistrnId";ws.Cells["C

c# - 在 Entity Framework 查询中过滤 "Includes"表

这是用于.NET3.5的EntityFramework:我需要查询一个表并包含一对多关系的“多”表的集合。我正在尝试将该集合作为查询的一部分进行过滤-我是EntityFramework的新手,而且我在弄清楚它时遇到了麻烦。简化示例:Author有Books,而Book有一个IsFiction列。我想要一个过滤后的作者列表,以及所有小说书籍。没有过滤器,很简单:varq=fromaindb.Authors.Include("Books")wherea.BirthYear>1900selecta;我可以事后过滤,比如:varfictionBooks=a.Books.Where(b=>b.I

c# - 如何使用 Action 过滤器和 HttpResponseMessage 在 Web API 中使用 ETag

我有一个ASP.NetWebAPIController,它只返回用户列表。publicsealedclassUserController:ApiController{[EnableTag]publicHttpResponseMessageGet(){varuserList=this.RetrieveUserList();//Thiswillreturnlistofusersthis.responseMessage=newHttpResponseMessage(HttpStatusCode.OK){Content=newObjectContent>(userList,newJsonMed

c# - MVC 3压缩过滤器导致乱码输出

因此,我有一个名为CompressAttribute的自定义属性,它在global.asax中设置为全局过滤器。它使用反射来检查当前操作方法的返回类型,如果它是“ViewResult”,它使用GZip或Deflate压缩输出。它工作得很好,除非页面抛出500服务器错误。如果遇到错误,我不会显示.NET错误页面,而是会得到一堆这样的信息:��������`I��%&/m��{J��J������显然它正在尝试对导致问题的500服务器错误页面进行编码。处理此问题的最佳方法是什么?过滤代码如下:publicoverridevoidOnActionExecuting(ActionExecuti

c# - 从 IEnumerable 中过滤重复项

我有这个代码:classMyObj{intId;stringName;stringLocation;}IEnumerablelist;我想像这样将列表转换成字典:list.ToDictionary(x=>x.Name);但它告诉我我有重复的key。如何只保留每个键的第一项? 最佳答案 我想最简单的方法是按键分组并取每组的第一个元素:list.GroupBy(x=>x.name).Select(g=>g.First()).ToDictionary(x=>x.name);或者,如果您的对象实现了IEquatable,您可以使用Disti