jjzjj

windows - 将 Windows 文件扩展名限制为三个字符是否有充分的理由?

我正在创建一个实用程序,它将以特定的二进制格式将数据存储在平面文件中。我希望文件扩展名特定于我的应用程序。除了旧的8.3文件名限制将扩展名限制为3个字符之外,还有其他原因吗?如果没有,限制是什么?我可以有myfilename.MyExtensionSoHandsOffEverybodyElse吗? 最佳答案 这是对旧Windows3.x/MSDOS时代的保留。今天,有很多文件名的扩展名超过3个字符。如果我没记错的话,WindowsXP对路径名(包括文件名)的最大字符数限制为255个字符。

windows - 有什么理由不在 COM+ 应用程序中承载 COM 服务器?

将进程内COM服务器转换为进程外COM服务器的最简单方法是创建COM+应用程序。这样做可能有哪些缺点? 最佳答案 我真的想不出任何理由来创建您自己的容器或使用第3方容器(如果存在)来支持MTS/COM+。我的意思是它可以满足您的所有需求:让您选择分布COM对象到容器进程。让您配置他们的帐户跑下。监控容器处理并在必要时重新启动并且可以回收它们。甚至允许你在场景中托管STA组件你需要多线程的地方通过启动多个服务worker进程。等如果不花费6个月或更长时间,很难想象做得比这更好。 关于win

c# - 有什么理由不使用 XmlSerializer?

我刚刚了解了.Net中的XmlSerializer类。之前我总是使用标准类来解析和编写我的XML。在深入探讨之前,我想知道在某些情况下它是否不是正确的选择。编辑:我所说的标准类是指XmlDocument、XmlElement、XmlAttribute等。 最佳答案 使用XmlSerializer时有很多限制:您必须有一个public无参数构造函数(正如idlewire在评论中提到的,它不必是公开的)只有公共(public)属性被序列化接口(interface)类型不能序列化和其他一些人...这些约束通常会迫使您做出某些您在其他情况下

c# - 有没有理由我不应该从 C# 开始

我认为我倾向于将C#和.net作为学习Web开发的集中语言。我想学习良好的编程基础知识,并且我已经研究了几乎所有其他内容。我将其缩小为C#、Python、Ruby和PHP这四个。是否有理由远离C#(我认为成本问题不会真正适用于我的独立开发人员情况,但我可能完全错了)。有什么想法吗?我知道这些都是很棒的语言,所以我不想问哪一个是最好的。然而,Ruby是否会成为第一语言的可行替代品,或者它是否有太多的“幕后魔法”加上Rails和非正统的方法论?我确实喜欢我所看到的语言。 最佳答案 这可能会导致一场口水战,但我认为C#是一种非常适合用于W

c# - 有什么理由不使用标准 resx+static 绑定(bind)来本地化 WPF 吗?

我正在寻找一种非常简单的方法来将我的应用程序本地化为日语以及默认的英语。唯一的要求是我们能够以指定的语言启动它。我们使用的LocBaml东西笨重、复杂、容易出错,并且使我们的构建过程极其困难。我正在考虑将所有内容移回资源文件(Strings.resx、Strings.ja.resx)并只进行静态绑定(bind),如下所示:然后在启动时找出他们想要的语言并切换从中提取字符串的资源:publicstaticvoidMain(string[]args){if(args[0]=="-lang"){Thread.CurrentThread.CurrentUICulture=CultureInfo

c# - 不使用空合并运算符进行延迟初始化有什么好的理由吗?

问候我今天在做一些惰性初始化代码,我想为什么不使用null合并运算符来做这件事,它更短,但后来我想这样做会有任何开销或额外成本。下面是简化的示例代码,显示了用于惰性初始化的更常见形式,然后是使用空合并运算符的形式。它们具有完全相同的结果,并且看起来是等效的。我的第一个想法是,在创建对象之后,现在可以使用??将其附加分配给自身。这不是问题吗,编译器/JIT如何优化它,是否有更邪恶的事情发生,你永远不应该用??进行延迟初始化,或者它是完全安全的,没有坏的魔力可以来自它。privateMyLazyObject_lazyObject;publicMyLazyObjectGetMyLazyObj

c# - 有什么理由让 Timer 将 AutoReset 设置为 false,然后在其经过的事件期间重新启动自身?

我刚碰到这段代码,但我不明白。是否有理由使用这种设计,而不是仅在AutoReset为true的情况下重新运行经过的代码?privatereadonlyTimerTimer=newTimer();protectedoverridevoidOnStart(string[]args){Logger.InfoFormat("Starting{0}.",ServiceName);try{//IfEnabledissettotrueandAutoResetissettofalse,theTimerraisestheElapsedeventonlyonce,thefirsttimetheinterv

c# - 谁能给我一个很好的理由在代码中使用 CLR 类型名称而不是 C# 类型名称(别名)(作为一般做法)?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我们的开发团队为此争论不休。我很想听听其他人对此有何看法。

c# - 有什么充分的理由不在核心 MVC 中使用 ViewComponent 而不是 Partial View 吗?

我是MVC的新手,决定从.net-core开始,所以我不太了解核心版本与旧版本之间的差异。我确实找到了下面的问题,它提供了一些见解,但并没有帮助我决定我是否可以基本上忽略部分观点。WhyshouldweuseMVC6FeatureViewComponentsoverPartialView:Whatisthedifference?我的问题很简单-如果我可以用ViewComponent做一些事情,有什么好的理由不这样做吗?非常感谢!下面提供了上下文示例。主视图调用:View组件:@awaitComponent.InvokeAsync("CreatePerson",newPerson())与

c# - 有没有理由拥有没有 setter/getter 的属性(property)?

我的经理问我使用带有setter而没有getter的属性是否是好的做法。publicclassPropertyWrapper{privateMyClass_field;publicMyClassProperty{set{_field=value;}}publicstringFirstProperty{get{return_field.FirstProperty;}}publicstringSecondProperty{get{return_field.SecondProperty;}}}他将使用其他属性来公开私有(private)字段中的属性,由该setter设置。我的建议是只使用私有