草庐IT

c# - 在 C# 中查看一个字符串是否包含另一个字符串的最快、不区分大小写的方法是什么?

编辑2:确认我的性能问题是由于对StringExtensions类的静态函数调用造成的。删除后,IndexOf方法确实是完成此操作的最快方法。在C#中查看一个字符串是否包含另一个字符串的最快、不区分大小写的方法是什么?我在Caseinsensitive'Contains(string)'看到该帖子的公认解决方案但我已经做了一些初步的基准测试,似乎使用该方法会导致在找不到测试字符串时对较大字符串(>100个字符)的调用速度降低几个数量级。以下是我知道的方法:索引:publicstaticboolContains(thisstringsource,stringtoCheck,StringC

C#:使用 DirectoryInfo 时如何登录共享

如果我想用UNC路径实例化一个DirectoryInfo对象DirectoryInfomyDI=newDirectoryInfo(@"\\server\share");如何传递访问该共享所需的用户名/密码?谢谢 最佳答案 在.NET4中,这个类非常适合我通过UNC登录非Windows服务器。usingMicrosoft.VisualBasic;usingSystem;usingSystem.Collections;usingSystem.Collections.Generic;usingSystem.Data;usingSystem

具有键值的 C# foreach 循环

在PHP中,我可以使用foreach循环,这样我就可以访问键和值,例如:foreach($arrayas$key=>$value)我有以下代码:Regexregex=newRegex(pattern);MatchCollectionmc=regex.Matches(haystack);for(inti=0;imatch=newDictionary();for(intj=0;j在//here我想match.add(key,value)但我不知道如何从GroupCollection中获取key,它在这种情况应该是捕获组的名称。我知道gc["goupName"].Value包含匹配的值。

c# - 使用 C# 将字符串表达式转换为整数值

这个问题在这里已经有了答案:operatorsasstrings(13个答案)关闭9年前。如果这个问题已经得到回答,我很抱歉,但我没有找到合适的答案。我在C#中有一个字符串表达式,我需要将其转换为int或decimal值。例如:stringstrExp="10+20+30";输出应该是60。我该怎么做???

c# - ASP.NET MVC Html.ActionLink 维护路由值

我有一个问题在这里被问得很多:asp.netmvcHtml.ActionLink()keepingroutevalueIdon'twant但是,最终的解决方案是一个简单明了的解决方案,我真的很想了解为什么会发生这种情况,如果有人可以向我解释一下吗?为了完整起见,可以非常轻松地重新创建场景:创建一个新的MVC网络应用程序。运行它。访问“关于”选项卡将URL修改为/Home/About/Flib-这显然会将您带到我们不关心的ID为“Flib”的操作。请注意,顶部菜单链接到关于现在实际上链接到/Home/About/Flib-据我所知这是错误的,因为我现在完全没有办法使用站点链接返回/Hom

c# - 依赖注入(inject)和 AppSettings

假设我正在为我的应用程序定义一个浏览器实现类:classInternetExplorerBrowser:IBrowser{privatereadonlystringexecutablePath=@"C:\ProgramFiles\...\...\ie.exe";...codethatusesexecutablePath}乍一看这似乎是个好主意,因为executablePath数据靠近将使用它的代码。当我尝试在另一台具有外语操作系统的计算机上运行相同的应用程序时,问题就来了:executablePath将具有不同的值。我可以通过AppSettings单例类(或其等效类之一)解决此问题,但

c# - 如何为 string.Format 设置命名参数?

调用时出现C#错误:string.Format(format:"abbccc",1,22);错误是“命名参数规范必须在指定所有固定参数后出现”我该如何解决这个问题?[编辑]我更喜欢使用命名参数。 最佳答案 如果要指定格式参数的名称,还必须指定以下参数的名称:string.Format(format:"abbccc",arg0:1,arg1:22);这不是很有用,因为名称“arg0”和“arg1”根本没有说明参数。另外,只有到“arg2”的重载,所以如果你有更多的参数,你必须把它们放在一个数组中来命名参数:string.Format(

C# 将动态字符串转换为现有类

这个问题在这里已经有了答案:Createaninstanceofaclassfromastring(8个答案)关闭9年前。在Windows应用程序中,使用C#,我有一个报告模块,它将依赖于类来填充报告。但是会有很多报告,我不想为每一个都编写代码。流程将是这样的:在报告编辑器中,报告将被分配一个类(即“应用程序”)作为一个字符串。当用户选择要运行的报表时,代码将从SQL查询中获取数据。该代码将获取数据并找出将数据放入哪个类。然后报告将采用该类并使用来自该类的数据填充报告。这是我的困境,我如何使代码动态化以便代码将分配的类转换为正确的类对象?心目中的例子:gVar=Report;(gVar

c# - 将类转换为数组

我有一个DisplayedData类...publicclassDisplayedData{privateint_key;privateString_username;privateString_fullName;privatestring_activated;privatestring_suspended;publicintkey{get{return_key;}set{_key=value;}}publicstringusername{get{return_username;}set{_username=value;}}publicstringfullname{get{return

c# - 是否可以将反射与 linq to entity 一起使用?

我试图通过创建一个扩展方法来一般地处理过滤来稍微清理我的代码。这是我要清理的代码。varqueryResult=(fromrindc.Retailersselectr);if(!string.IsNullOrEmpty(firstName))queryResult=queryResult.Where(ex=>SqlFunctions.PatIndex(firstName.Trim(),ex.FirstName.Trim())>0);if(!string.IsNullOrEmpty(lastName))queryResult=queryResult.Where(ex=>SqlFuncti