草庐IT

GUID_APPLICATION

全部标签

c# - 编译器不应允许 Guid == null

Thebehaviourdescribedbelowisspecificto.net-3.5only我刚刚遇到了C#编译器中最令人惊讶的行为;我有以下代码:Guidg1=Guid.Empty;boolb1=(g1==null);好吧,Guid不可为空,因此它永远不能等于null。我在第2行中进行的比较总是返回false。如果你对整数做同样的事情,编译器会发出警告说结果总是假的:intx=0;boolb2=(x==null);我的问题是:为什么编译器允许您将Guid与null进行比较?据我所知,它已经知道结果总是假的。内置转换的完成方式是否让编译器假定null是一个可能的值?我在这里遗漏

c# - 编译器不应允许 Guid == null

Thebehaviourdescribedbelowisspecificto.net-3.5only我刚刚遇到了C#编译器中最令人惊讶的行为;我有以下代码:Guidg1=Guid.Empty;boolb1=(g1==null);好吧,Guid不可为空,因此它永远不能等于null。我在第2行中进行的比较总是返回false。如果你对整数做同样的事情,编译器会发出警告说结果总是假的:intx=0;boolb2=(x==null);我的问题是:为什么编译器允许您将Guid与null进行比较?据我所知,它已经知道结果总是假的。内置转换的完成方式是否让编译器假定null是一个可能的值?我在这里遗漏

c# - 如何在 Global.aspx 的 Application_Start 中获取完整的主机名+端口号?

我试过了Uriuri=HttpContext.Current.Request.Url;Stringhost=uri.Scheme+Uri.SchemeDelimiter+uri.Host+":"+uri.Port;它在我的本地机器上运行良好,但是当发布到IIS7时,有一个异常说System.Web.HttpException:Requestisnotavailableinthiscontext有人知道如何实现吗? 最佳答案 当您的Web应用程序启动时,没有正在处理的HTTP请求。您可能想要处理定义Application_BeginR

c# - 如何在 Global.aspx 的 Application_Start 中获取完整的主机名+端口号?

我试过了Uriuri=HttpContext.Current.Request.Url;Stringhost=uri.Scheme+Uri.SchemeDelimiter+uri.Host+":"+uri.Port;它在我的本地机器上运行良好,但是当发布到IIS7时,有一个异常说System.Web.HttpException:Requestisnotavailableinthiscontext有人知道如何实现吗? 最佳答案 当您的Web应用程序启动时,没有正在处理的HTTP请求。您可能想要处理定义Application_BeginR

c# - 性能 - 使用 Guid 对象或 Guid 字符串作为键

当使用Guid作为Dictionary的索引时,是使用Guid对象更好,还是使用指导?我刚刚重构了一些使用字符串来使用对象的代码,因为到处都是newGuid()调用。但这让我想知道性能问题可能是什么。(集合相当小,但会迭代很多次。) 最佳答案 Guid应该更快,因为比较更简单-只需几个直接字节。该字符串涉及取消引用和更多工作。当然-你可以分析;-p证据:Searchingfor7f9b349f-f36f-94de-ad96-04279ddf6ecfAsguid:466;-1018643328Asstring:512;-1018643

c# - 性能 - 使用 Guid 对象或 Guid 字符串作为键

当使用Guid作为Dictionary的索引时,是使用Guid对象更好,还是使用指导?我刚刚重构了一些使用字符串来使用对象的代码,因为到处都是newGuid()调用。但这让我想知道性能问题可能是什么。(集合相当小,但会迭代很多次。) 最佳答案 Guid应该更快,因为比较更简单-只需几个直接字节。该字符串涉及取消引用和更多工作。当然-你可以分析;-p证据:Searchingfor7f9b349f-f36f-94de-ad96-04279ddf6ecfAsguid:466;-1018643328Asstring:512;-1018643

c# - .NET 3.5 中有 GUID.TryParse() 吗?

更新Guid.TryParse在.NET4.0中可用结束更新显然,.NETCLR2.0中没有公共(public)GUID.TryParse()。所以,我正在研究正则表达式[也就是谷歌搜索寻找一个],每次我找到一个时,评论部分都会有一个激烈的争论,关于RegExA不起作用,请使用RegExB。然后有人会写正则表达式Cyaddayadda所以无论如何,我决定这样做,但我对此感到遗憾。publicstaticboolIsGuid(stringpossibleGuid){try{Guidgid=newGuid(possibleGuid);returntrue;}catch(Exceptione

c# - .NET 3.5 中有 GUID.TryParse() 吗?

更新Guid.TryParse在.NET4.0中可用结束更新显然,.NETCLR2.0中没有公共(public)GUID.TryParse()。所以,我正在研究正则表达式[也就是谷歌搜索寻找一个],每次我找到一个时,评论部分都会有一个激烈的争论,关于RegExA不起作用,请使用RegExB。然后有人会写正则表达式Cyaddayadda所以无论如何,我决定这样做,但我对此感到遗憾。publicstaticboolIsGuid(stringpossibleGuid){try{Guidgid=newGuid(possibleGuid);returntrue;}catch(Exceptione

c# - ASP.NET Core 1.1 在本地运行良好,但在发布到 Azure 时显示 "An error occurred while starting the application."

我一直在开发一个ASP.NETCore网络应用,主要基于VisualStudio2017RC2中提供的MVC模板。它在本地Debug模式下运行良好,但当我尝试将它发布到Azure托管的Web应用程序时,我收到此错误:Anerroroccurredwhilestartingtheapplication..NETCoreX86v4.1.1.0|Microsoft.AspNetCore.Hostingversion1.1.0-rtm-22752|MicrosoftWindows6.2.9200我试过在web.config文件中设置stdoutLogEnabled="true",但是好像没有效

c# - ASP.NET Core 1.1 在本地运行良好,但在发布到 Azure 时显示 "An error occurred while starting the application."

我一直在开发一个ASP.NETCore网络应用,主要基于VisualStudio2017RC2中提供的MVC模板。它在本地Debug模式下运行良好,但当我尝试将它发布到Azure托管的Web应用程序时,我收到此错误:Anerroroccurredwhilestartingtheapplication..NETCoreX86v4.1.1.0|Microsoft.AspNetCore.Hostingversion1.1.0-rtm-22752|MicrosoftWindows6.2.9200我试过在web.config文件中设置stdoutLogEnabled="true",但是好像没有效