Tag: C#的

如何从值获取C#枚举说明?

可能重复: 获取Enum的值的属性 我有一个像这样的描述属性的枚举: public enum MyEnum { Name1 = 1, [Description("Here is another")] HereIsAnother = 2, [Description("Last one")] LastOne = 3 } 我发现这一点的代码来检索基于枚举的描述 public static string GetEnumDescription(Enum value) { FieldInfo fi = value.GetType().GetField(value.ToString()); DescriptionAttribute[] attributes = (DescriptionAttribute[])fi.GetCustomAttributes( typeof(DescriptionAttribute), false); if (attributes != null && attributes.Length > 0) return attributes[0].Description; else return value.ToString(); } 这使我可以编写如下代码: var […]

char数组与char中的C指针

我想了解C中的指针,但我目前与以下内容混淆: char *p = "hello" 这是一个字符指针,指向字符数组,从h开始。 char p[] = "hello" 这是一个存储hello的数组。 将这两个variables传递给这个函数有什么区别? void printSomething(char *p) { printf("p: %s",p); } 我不明白他们有什么不同。

为什么Response.Redirect会导致System.Threading.ThreadAbortException?

当我使用Response.Redirect(…)redirect我的表单到一个新的页面时,我得到的错误: 在mscorlib.dll中发生types“System.Threading.ThreadAbortException”的第一个机会exception mscorlib.dll中发生types“System.Threading.ThreadAbortException”的exception,但未在用户代码中处理 我的理解是这个错误是由web服务器中止了response.redirect被调用的页面的其余部分引起的。 我知道我可以将第二个参数添加到名为endResponse的Response.Redirect 。 如果我设置endResponse为True,我仍然得到错误,但如果我将它设置为False,那么我不会。 我很确定,这意味着networking服务器正在运行我redirect的页面的其余部分。 至less可以说这似乎是低效率的。 有没有更好的方法来做到这一点? 除了Response.Redirect之外的东西还是有办法强制旧页面停止加载,我不会得到一个ThreadAbortException ?

`enable_shared_from_this`有什么用处?

我在阅读Boost.Asio示例时遇到了enable_shared_from_this ,在阅读完文档之后,我仍然不知道如何正确使用它。 有人可以给我一个例子和/或解释什么时候使用这个类是有道理的。

理解术语和概念的含义 – RAII(资源获取是初始化)

请问C ++开发人员,请给我们一个关于RAII是什么的好的描述,为什么它很重要,以及它是否与其他语言有关联? 我确实知道一点点。 我相信它代表“资源获取是初始化”。 然而,这个名字并没有和我(可能是不正确的)理解RAII是什么关系:我得到的印象是,RAII是一种初始化堆栈上的对象的方法,当这些variables超出范围时,析构函数会自动被称为导致资源被清理。 那为什么不叫“使用栈来触发清理”(UTSTTC :)呢? 你怎么从那里到“RAII”? 而且你怎么能在堆栈上做些什么来清理堆上的东西呢? 另外,有没有不能使用RAII的情况? 你有没有发现自己希望收集垃圾? 至less有一个垃圾收集器可以用于某些对象,同时让其他人被pipe理? 谢谢。

.NET中的属性是什么?

.NET中的属性是什么,它们有什么好处,以及如何创build我自己的属性?

有没有办法在Java中模拟C ++的“朋友”概念?

我希望能够在一个包中编写一个Java类,它可以访问另一个包中的类的非公共方法,而不必将其作为另一个类的子类。 这可能吗?

validation电子邮件地址的C#代码

什么是最优雅的代码来validation一个string是一个有效的电子邮件地址?

ASP.NET MVC自定义error handlingApplication_Error Global.asax?

我有一些基本的代码来确定我的MVC应用程序中的错误。 目前在我的项目中,我有一个名为Error与控制器的操作方法HTTPError404() , HTTPError500()和General() 。 他们都接受一个string参数error 。 使用或修改下面的代码。 将数据传递给错误控制器进行处理的最佳方式是什么? 我希望有一个可靠的解决scheme。 protected void Application_Error(object sender, EventArgs e) { Exception exception = Server.GetLastError(); Response.Clear(); HttpException httpException = exception as HttpException; if (httpException != null) { RouteData routeData = new RouteData(); routeData.Values.Add("controller", "Error"); switch (httpException.GetHttpCode()) { case 404: // page not found routeData.Values.Add("action", "HttpError404"); break; case 500: // […]

在C#中针对引用的XSDvalidationXML

我有一个具有指定架构位置的XML文件,例如: xsi:schemaLocation="someurl ..\localSchemaPath.xsd" 我想在C#中validation。 Visual Studio,当我打开文件,对模式进行validation,并完美列出错误。 但不知何故,我似乎无法自动validation它在C#中没有指定模式来validation,像这样: XmlDocument asset = new XmlDocument(); XmlTextReader schemaReader = new XmlTextReader("relativeSchemaPath"); XmlSchema schema = XmlSchema.Read(schemaReader, SchemaValidationHandler); asset.Schemas.Add(schema); asset.Load(filename); asset.Validate(DocumentValidationHandler); 我不应该能够自动使用XML文件中指定的模式进行validation吗? 我错过了什么?