jjzjj

compare-attribute

全部标签

c# - 性能问题 : comparing to String. 格式

不久前,JonSkeet的一篇文章在我脑海中植入了构建一个CompiledFormatter类的想法,用于在循环中使用而不是String.Format()。这个想法是对String.Format()的调用部分花在解析格式字符串上的开销;我们应该能够通过将该代码移出循环来提高性能。当然,诀窍是新代码应该完全匹配String.Format()行为。这周我终于做到了。我经历了使用.NetframeworksourceprovidedbyMicrosoft直接调整他们的解析器(事实证明String.Format()实际上将工作交给了StringBuilder.AppendFormat())。我

c# - ASP.NET MVC : Problem setting the Authorize attribute Role from a variable, 需要常量

我在设置变量的授权属性角色值时遇到问题。错误消息说它需要一个const变量。当我创建一个const类型变量时,它工作正常,但我试图从Web.Config文件或任何其他允许最终用户设置它的文件加载值。我正在使用集成的Windows身份验证,因为这是一个仅限Intranet的应用程序。有没有办法从Controller检查用户角色?我将在if语句中使用它而不是属性来进行身份验证。[Authorize(Roles=Config.GMPUser)]publicActionResultIndex(){returnView();} 最佳答案 我有

c# - 如何通过自定义Attribute获取和修改属性值?

我想创建一个可用于以下属性的自定义属性:[TrimInputString]publicstringFirstName{get;set;}这将在功能上等同于privatestring_firstNamepublicstringFirstName{set{_firstName=value.Trim();}get{return_firstName;}}所以基本上每次设置属性值都会被修剪。如何从属性中解析值、修改该值然后使用新值设置属性?[AttributeUsage(AttributeTargets.Property)]publicclassTrimInputAttribute:Attrib

c# - 为什么 List<T>.Sort 使用 Comparer<int>.Default 比等效的自定义比较器快两倍以上?

结果使用1000万个随机列表ints(每次相同的种子,重复10次的平均值):listCopy.Sort(Comparer.Default)需要314毫秒。使用sealedclassIntComparer:IComparer{publicintCompare(intx,inty){returnxlistCopy.Sort(newIntComparer())需要716毫秒。一些变化:使用structIntComparer而不是sealedclass:771毫秒使用publicintCompare(intx,inty){returnx.CompareTo(y);}:809毫秒评论Compar

c# - 为什么 string.Compare 似乎不一致地处理重音字符?

如果我执行下面的语句:string.Compare("mun","mün",true,CultureInfo.InvariantCulture)结果为'-1',表示'mun'的数值小于'mün'。但是,如果我执行这条语句:string.Compare("Muntelier,Schweiz","München,Deutschland",true,CultureInfo.InvariantCulture)我得到“1”,表示“Muntelier,Schewiz”应该排在最后。这是比较中的错误吗?或者,更有可能的是,在对包含重音符号的字符串进行排序时,是否应该考虑一条规则这是一个问题的原因是,

c# - 自定义验证属性 : Comparing two properties in the same model

有没有一种方法可以在ASP.NETCore中创建自定义属性,以使用ValidationAttribute验证一个日期属性是否小于模型中的其他日期属性。假设我有这个:publicclassMyViewModel{[Required][CompareDates]publicDateTimeStartDate{get;set;}[Required]publicDateTimeEndDate{get;set;}=DateTime.Parse("3000-01-01");}我正在尝试使用这样的东西:publicclassCompareDates:ValidationAttribute{publi

C# 字典性能 : Default string Comparer's GetHashCode() allocates memory in violation of guidelines, 从而破坏性能?

有anestablishedguideline获取哈希码不应分配内存,因为这会通过调用垃圾收集器对哈希表查找产生负面影响。然而,这个确切的失败是我所看到的我使用System.Collections.Generic.Dictionary的应用程序的配置文件在一个非常紧凑的循环中,我在分析器结果中发现以下内容:[3.47%]TryGetValue(TKey,TValue&)(...字典)[3.47%]FindEntry(TKey)(...字典)[3.47%]GetHashCode(string)(System.CultureAwareComparer)[3.46%]GetHashCodeO

c# - 有一个 "' Resource.Attribute ' does not contain a definition for 'actionBarSize' "错误

试图调试一个空的应用程序并得到“‘Resource.Attribute’不包含‘actionBarSize’的定义”错误。我已经重新安装了androidSDK。publicstaticvoidUpdateIdValues(){global::Xamarin.Forms.Platform.Android.Resource.Attribute.actionBarSize=global::L1NQ.Droid.Resource.Attribute.actionBarSize;}publicpartialclassAttribute{staticAttribute(){global::Andr

C# 反射 : Finding Attributes on a Member Field

我可能问错了,但是你能/怎么能在类中找到字段......例如......publicclassHtmlPart{publicvoidRender(){//this.GetType().GetCustomAttributes(typeof(OptionalAttribute),false);}}publicclassHtmlForm{privateHtmlPart_FirstPart=newHtmlPart();[Optional]//或者也许我只是做错了......我怎样才能调用一个方法然后检查应用到它自身的属性?此外,为了这个问题-我只是好奇是否有可能在不知道/访问父类的情况下找到属

c# - 我可以在 Linq Comparable 中使用 TryParse 吗?

一种:Documenti=Documenti.OrderBy(o=>string.IsNullOrEmpty(o.Note)).ThenBy(o=>Int32.TryParse(o.Note)).ToList();如果o.Note是“”或不是int,那将“忽略”(不是顺序,放在末尾)。我该怎么做? 最佳答案 所有使用C#7或更新版本的人都滚动到底部,其他人都可以阅读原始答案:是的,如果您将正确的参数传递给int.TryParse,您可以.两个重载都将int作为out参数,并在内部使用解析后的值对其进行初始化。所以像这样:intnot