草庐IT

alpha版本

全部标签

c# - 不同 CLR 版本上的不同排序结果

在C#中比较字符串时,不同的clr在Windows7sp1x64上给出不同的结果。这是示例代码:ListmyList=newList();myList.AddRange(new[]{"!-","-!","&-l","&l-","-(","(-","-*","*-",".-","-.","/'","-/"});myList.Sort();Console.WriteLine(Environment.Version);myList.ForEach(Console.WriteLine);Console.WriteLine();Console.WriteLine(string.Compare("

c# - 打印和/或修改 razor 编译器服务用于编译 cshtml 的 c# 版本

我希望能够找出razor使用哪个C#版本来编译我的cshtml模板。我想要这个的原因是thisbreakingchange.我们在foreach语句中有一个lambda,它在我们的本地开发机器上运行良好,但在我们的测试环境(没有安装C#5)上产生了一个错误。这个错误非常难以调试(我们甚至复制了所有测试环境DLL和数据库,但仍然无法重现该错误)。因此,为了防止将来出现这种开发/测试差异,我想知道是否有一种方法可以指定razor应该用来编译cshtml文件的C#版本。如果我可以检查razor使用的C#版本(通过打印),那就太好了。更新:根据要求,提供有关此行为如何发生的更多详细信息。我们使

c# - 针对 csc.exe 中的特定框架版本

如何通过命令行调用为csc.exec#编译器指定目标框架版本(例如,没有.csproj文件并且不通过MSBUILD引擎)?例如,使用C#3.0csc.exe编译器,如何编译为针对2.0.net框架的IL? 最佳答案 在C#3编译器的特定情况下,只要您不使用任何不在.NET2.0中的程序集或类型,就没有问题-IL是相同的(与目标相反1.1,例如)。除此之外,您还可以使用/noconfig/nostdlib,然后显式引用.NET2.0程序集(例如在c:\Windows\Microsoft.NET\Framework\v2.0.50727

c# - 在 Entity Framework 4.1 版本中使用 Code-First 时性能极慢

我们公司正在开发一个新的应用程序,它的核心是一个比较大的业务数据对象。我们决定先用代码尝试EntityFramework,以从应用程序中抽象出数据库,但事情出了差错。业务对象由大约60个类组成,总共大约600个属性;然而,它是一个树结构,不存在交叉/回溯指针。我们的测试是向数据库添加一个未初始化的类实例。在我们的数据结构上使用DbContext.Add在我的开发机器上花费了8分钟。这是这种大小的物体的预期性能吗?是否有导致EntityFramework性能不佳的常见问题列表?我觉得我需要一些帮助。一些更多的数据点:业务对象根下的第一层有27个元素。存在3个元素(其余元素已注释掉),添加

c# - Entity Framework 5 - 无法加载文件或程序集 EntityFramework,版本 = 5.0.0.0

我正在尝试为我的项目使用EntityFramework5,但我似乎在安装程序集以使其符合要求时遇到了一些问题。由于我最初是使用nuget安装的,所以我不确定我需要做什么才能使它按预期工作。请问我需要做什么来解决这个问题?*System.IO.FileNotFoundException:无法加载文件或程序集EntityFramework,Version=5.0.0.0,Culture=Neutral,PublicKeyToken=b77a5c561934e089'或其依赖项之一系统找不到指定的文件。警告:程序集绑定(bind)日志记录已关闭。要启用程序集绑定(bind)失败日志记录,请设

c# - 我可以让我的程序集引用另一个程序集的任何版本吗?

这个问题在这里已经有了答案:Isitpossibletoreplaceareferencetoastrongly-namedassemblywitha"weak"reference?(3个答案)关闭4年前。我正在开发一个类库(MyClassLibrary)。我依赖第三方类库(ThirdPartyClassLibrary)。我需要使用与我的用户相同版本的ThirdPartyClassLibrary。例如,如果我在ThirdPartyClassLibrary中设置静态值,用户需要看到该更改。我类的用户可能依赖于4个不同版本的ThirdPartyClassLibrary中的任何一个。Thir

c# - 如何修复无法加载文件或程序集 'nunit.engine,版本 = 3.7.0.0

我有一个带有单独测试项目的Web应用程序,该项目使用NUnit来运行单元测试。当我的测试项目试图发现测试时,我遇到了以下异常:Anexceptionoccurredwhiletestdiscoverer'NUnit3TestDiscoverer'wasloadingtests.Exception:Couldnotloadfileorassembly'nunit.engine,Version=3.7.0.0,Culture=neutral,PublicKeyToken=2638cd05610744eb'oroneofitsdependencies.Thesystemcannotfindt

c# - 在 C# 中是否有简写 If-Then-Else 的版本(cond?VB.Net 中的 : b),?

这个问题在这里已经有了答案:关闭12年前。PossibleDuplicate:IsthereaconditionalternaryoperatorinVB.NET?在C#中是否有简写If-Then-Else的版本:c=(a>b)?a:b;意思是……if(a>b){c=a;}else{c=b;}..在VB.Net中?

c# - 如何获取 WPF 应用程序的发布版本

我想要我的WPF应用程序发布版本。我尝试使用this的答案题。它有效,但问题是我们可以手动更改那里的值。我想知道我的项目实际发布了多少次(不需要版本号。我的应用程序发布了多少次)。这可以做到吗? 最佳答案 使用ClickOnce,每次发布时,VisualStudio都会自动更改编号。每次发布时它都会增加该值。你的问题是你手动更改了号码。解决方案是发布并让VisualStudio更新值...您应该注意到,一旦发布,您的项目就需要保存。这是因为VisualStudio刚刚为您增加了值。更新>>>如果您想从代码访问已发布的版本(您应该在您

c# - 如何在 Windows 应用商店应用程序中获取正在执行的程序集版本信息?

将应用程序移植到Windows应用商店时,我注意到.NETCoreFramework不包括:System.Reflection.Assembly.GetExecutingAssembly()我用它来获取显示在菜单屏幕上的版本信息。是否有替代品或我是否被迫将信息存储在其他地方以供检索?编辑:我还发现我可以从typeof(MyType).AssemblyQualifiedName中提取版本号,但这似乎很糟糕。 最佳答案 我正在使用这个:publicstringGetApplicationVersion(){varver=Windows.