相关疑难解决方法(0)

不区分大小写'包含(字符串)'

有没有办法让以下返回true?

string title = "ASTRINGTOTEST";
title.Contains("string");
Run Code Online (Sandbox Code Playgroud)

似乎没有一个过载允许我设置区分大小写.目前我大写它们两个,但这只是愚蠢(我指的是上下套管的i18n问题).

更新
这个问题是古老的,从那时起我就意识到,如果你想完全研究它,我会要求一个简单的答案来解决一个非常庞大和困难的话题.
对于大多数情况,在单语言的英语代码库中,这个答案就足够了.我怀疑是因为大多数人来到这个类别这是最受欢迎的答案.然而,
这个答案提出了一个固有的问题,即我们无法比较文本不区分大小写,直到我们知道两个文本是相同的文化并且我们知道文化是什么.这可能是一个不太受欢迎的答案,但我认为它更正确,这就是为什么我这样标记它.

c# string contains case-insensitive

2785
推荐指数
23
解决办法
83万
查看次数

C#按字符串名称设置/获取类属性

我要做的是使用字符串在类中设置属性的值.例如,我的类具有以下属性:

myClass.Name
myClass.Address
myClass.PhoneNumber
myClass.FaxNumber
Run Code Online (Sandbox Code Playgroud)

所有字段都是字符串类型,所以我提前知道它总是一个字符串.现在我希望能够使用字符串设置属性,就像使用DataSet对象一样.像这样的东西:

myClass["Name"] = "John"
myClass["Address"] = "1112 River St., Boulder, CO"
Run Code Online (Sandbox Code Playgroud)

理想情况下,我只想分配一个变量,然后使用变量中的字符串名称设置属性

string propName = "Name"
myClass[propName] = "John"
Run Code Online (Sandbox Code Playgroud)

我正在阅读关于反思的内容,也许是这样做的方法,但我不确定如何设置它,同时在课堂上保持属性访问不变.我想仍然可以使用

myClass.Name = "John"
Run Code Online (Sandbox Code Playgroud)

任何代码示例都非常棒.

c# reflection properties

69
推荐指数
2
解决办法
8万
查看次数

在LINQ中使用PropertyInfo对象查询集合

我有一个像这样的签名的方法

void RefreshMethod<T>(IEnumerable<T> lst, string propertyName) where T:class
{
   Type type = typeof(T);
   PropertyInfo property = type.GetProperties().Single(u => u.Name == primaryKeyProperty);
  //query goes here
}
Run Code Online (Sandbox Code Playgroud)

现在我想查询该集合以获取其所有值

propertyName <0

在一个简单的场景中,它就像这样容易

lst.where(u=>u.ID<0)
Run Code Online (Sandbox Code Playgroud)

但在这里我没有那个ID属性,但有相应的"PropertyInfo"对象.

我应该怎么做到这一点.

善意的指导

c# linq reflection

5
推荐指数
1
解决办法
4017
查看次数

标签 统计

c# ×3

reflection ×2

case-insensitive ×1

contains ×1

linq ×1

properties ×1

string ×1