草庐IT

c# - 异常消息是否应该全局化

我正在做一个项目,我刚刚开始做所有必要的工作来全局化应用程序。经常出现的一件事是是否全局化异常消息,但确保string.Format使用CultureInfo.CurrentCulture而不是CultureInfo.InvariantCulture。此外,这意味着异常消息将存储在可标记为特定于文化的资源文件中。所以问题是,异常消息应该全局化还是应该留在InvariantCulture或作者所在的国家;在我的例子中是en-US。 最佳答案 异常消息应该很少直接显示给用户。您需要考虑每个字符串的使用者。显然,用户界面中的文本片段需要国

c# - ASP.NET MVC 2 本地化/全局化存储在数据库中?

我一直在寻找本地化C#ASP.NETMVC2应用程序但将数据存储在数据库而不是.RESX文件中的好示例。不幸的是,我没有找到一个很好的例子,希望其他人可能知道并能为我指明正确的方向?非常感谢任何帮助/建议/文章 最佳答案 资源提供者模型:http://msdn.microsoft.com/en-us/library/aa905797.aspx向下滚动到标题为构建数据库资源提供程序的部分。 关于c#-ASP.NETMVC2本地化/全局化存储在数据库中?,我们在StackOverflow上找

c# - 我应该尽可能使我的方法静态化吗?

我经常思考这个问题……这可能是个白痴问题,但还是要问。假设我有这个类:publicclassSomeClass{publicintAProperty{get;set;}publicvoidSomeMethod(){DoStuff(AProperty);}}这样做有什么好处吗:publicclassSomeClass{publicintAProperty{get;set;}publicstaticvoidSomeMethod(intarg){DoStuff(arg);}}唯一明显的优势是我现在可以直接访问SomeMethod。那么,在稍微重构允许的情况下,将这些类型的方法设为静态是一种好

c# - MVC3 全局化 : need global filter before model binding

目前,我有一个名为GlobalizationFilter的全局过滤器,它检查路由值、cookie和浏览器语言header以确定请求的正确文化设置:publicoverridevoidOnActionExecuting(ActionExecutingContextfilterContext){//determinecultureInfoThread.CurrentThread.CurrentCulture=cultureInfo;Thread.CurrentThread.CurrentUICulture=cultureInfo;}一切正常,但模型绑定(bind)过程似乎发生在全局过滤器之

c# - c# 中 typedef 或子类化字符串的替代方法

情况我有一个类在内部处理许多不同类型的文件路径:一些是本地的,一些是远程的;一些相对的,一些绝对的。过去的情况是,它的许多方法将它们作为string相互传递,但要准确跟踪每个方法期望的路径类型变得非常困难。所需的修复所以我们基本上想typedef四种不同的类型到string:RemoteRelative,LocalRelative,RemoteAbsolute和LocalAbsolute。这样,静态类型检查器可以帮助开发人员确保他们提供和期望具有正确语义的string。不幸的是,string在BCL中是密封的,所以我们不能通过简单的继承来做到这一点。并且没有简单的typedef,所以我

c# - 样式化 WPF ComboBox 项目

我有一个非常简单的WPF应用程序,它显示一个ComboBox,它绑定(bind)到代表人的类列表。每个“Person”对象都有一个Name字符串字段和一个Sex枚举。我希望ComboBox显示各种人的姓名字段的下拉列表,但要根据性别字段设置每一行的样式,例如,男性为蓝色,女性为粉红色。谁能告诉我我做错了什么?这是XML:这是C#:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Windows;usingSystem.Windows.Controls;usi

c# - 我应该让我的私有(private)类方法静态化吗?

是否有将类中的私有(private)方法设为静态的最佳实践?我有一个有几种方法的类(class)。其中一些可以很容易地变成静态的,因为它们只是处理数据。我应该让它们保持静态还是保持原样?这更多是风格问题吗?是否有性能方面的考虑?编辑:Methodcanbemadestatic,butshouldit? 最佳答案 如果方法不访问任何类型的状态,那么它们应该是静态的。静态方法调用提供了优于实例方法的性能增益,并且静态方法的存在告诉future代码的读者调用此方法不会对该类型的当前实例的状态产生副作用。静态方法的性能提升来自于这样一个事实

C# Linq 与柯里化(Currying)

我正在研究函数式编程及其各种概念。所有这些东西都很有趣。我已经多次阅读有关Currying及其优势的文章。但我不明白这一点。以下源代码演示了curry概念的使用和linq的解决方案。实际上,我没有看到使用柯里化(Currying)概念的任何优势。那么,使用柯里化(Currying)有什么好处呢?staticboolIsPrime(intvalue){intmax=(value/2)+1;for(inti=2;i,IEnumerable>GetPrimes=HigherOrder.GetFilter().Curry()(IsPrime);staticvoidMain(string[]ar

c# - 线栅格化 : Cover all pixels, 与线渐变无关?

基本上,我想使用线性算法来确定要为我的raycaster检查哪些单元格的碰撞。Bresenham这不是很好,因为它使用统一厚度方法,这意味着它忽略了至少没有覆盖一半线的单元格。一点也不好,因为这意味着我的线的某些部分没有被检查是否与单元格相交,从而导致错误。我似乎找不到任何“粗线”算法,谁能帮我找到一个?绿:我想要什么。红色:我目前拥有的和不想要的。 最佳答案 我遇到了与您完全相同的问题,并且找到了一个非常简单的解决方案。通常,Bresenham有两个连续的if来确定是否应该增加两个维度的坐标:publicvoiddrawLine(

c# - WPF:从代码动画化 TranslateTransform

我有一个WPFCanvas,我在上面通过代码动态创建对象。这些对象正在通过设置RenderTransform属性进行转换,并且需要应用这些转换之一的动画。目前,我无法获取任何转换的属性以进行动画处理(尽管没有引发异常并且动画似乎在运行-已引发完成的事件)。此外,如果动画系统受到压力,有时Storyboard.Completed事件永远不会引发。我遇到的所有示例都对XAML的转换进行动画处理。MSDNdocumentation建议必须将转换的x:Name属性设置为可动画化,但我还没有找到从代码中设置它的有效方法。有什么想法吗?这是重现问题的完整代码list:usingSystem;usi