草庐IT

Block_release

全部标签

c# - 构造函数中的 Try/catch block

在构造函数中使用try/catchblock是否是一种糟糕的编程习惯?或者只要我们的程序优雅地处理typeinitializer异常就没有什么区别。在C#中,如果构造函数中有任何异常,框架总是抛出类型初始化异常。谢谢,沙米卡 最佳答案 System.TypeInitializationException在static构造函数抛出异常时抛出,而不是在实例构造函数上。异常通常在实例构造函数中抛出。除此之外,与其他任何地方一样,它也没有什么“错误”;处理您可以从中正确恢复的异常,并允许那些您无法恢复的异常。

c# - 如何制作俄罗斯方 block 克隆?

我正在使用XNAC#编写俄罗斯方block的克隆代码,但不确定在高层次上处理游戏数据结构方面的最佳方法。我对碰撞检测、旋转、动画等完全没问题。我需要知道存储“掉落的方block”的最佳方法——即不再受玩家控制的方block。我认为每个Tetrominoblock都应存储在其自己的类中,该类由4x4数组组成,以便可以轻松旋转block。那么问题是如何将四联骨牌的最终位置存储到游戏网格中,方法是将四联骨牌切割成单独的block(对于每个单元格),然后设置主游戏网格的相应位置以容纳这些相同的block,然后将四联骨牌消失一次它已经到达了它的最终位置。也许我的方法有一些缺点。我是否应该为主游戏

c# - 如果我从 C# 中的 try/finally block 中返回,finally 中的代码是否总是运行?

根据一些初步测试,它似乎确实如此,但我想知道的是它是否保证返回,或者在某些情况下是否不能返回?这对我的应用程序至关重要,但我还没有找到它不会返回的用例。我想获得有关该主题的专业知识。 最佳答案 其他答案中有许多不准确之处。当控制权正常离开tryblock时,控制权被传递到finallyblock——也就是说,通过return、goto、break、continue或简单地从末尾掉下来。当控制权离开tryblock时,控制权将通过已被封闭的catchblock捕获的异常传递给finallyblock。在任何其他情况下,都不能保证fin

c# - .NET Image.Save 偶尔会生成带有错误 IDAT block 的 PNG

我有一个我编写的C#/.NET实用程序,可以从磁盘加载PNG图像Bitmapb=Bitmap.FromStream(newMemoryStream(File.ReadAllBytes(filename)))asBitmap;对它们执行多种转换(旋转、缩放、alpha),然后根据应用的转换以不同的文件名将生成的PNG图像保存回磁盘b.Save(outputName,ImageFormat.Png);我已经使用该实用程序成功编写了数千个PNG。但是,有时其中一个PNG无法加载到使用libpng的单独程序中。在该程序中,libpng给出错误“找到太多IDAT”查看PNG文件会发现在文件末尾I

c# - 将 'Set Next Statement' 强制为 'if' block 时出现 CLR System.NullReferenceException

背景我承认这不是正常代码执行期间可能发生的事情,但我在调试时发现了它,并认为它很有趣,可以分享。我认为这是由JIT编译器引起的,但欢迎任何进一步的想法。我已经使用VS2013复制了这个针对4.5和4.5.1框架的问题:设置要查看此异常,必须启用CommonLanguageRuntimeExceptions:DEBUG>异常...我已将问题的原因提炼为以下示例:usingSystem.Collections.Generic;usingSystem.Linq;namespaceConsoleApplication6{publicclassProgram{staticvoidMain(){v

c# - 将 TypeScript 与内联服务器端 `<script>` block 和 ASP.Net 结合使用

我希望能够在ASPX(或Razor)页面中使用内联TypeScript,在页面编译时将其转换为Javascript。所以:...变成......它应该在@的同一时间发生或block被转换。这应该可以在运行时通过某种页面后处理实现,但不会在编译时生成异常-我想在发现脚本中的错误的同时发现任何C#代码。理想情况下,TypeScriptintellisense等应该在内联中工作block,这让我觉得这应该是一个VS2012扩展。有什么办法吗? 最佳答案 简短的回答是否定的。您可以编写一个TypeScript文件并将编译后的JavaScri

c# - Release 文件夹中的 vshost.exe 文件?

为什么我的应用程序的发布版本会生成一个appname.vshost.exe文件?我可能会补充说,我正在使用外部dll库和一些不安全的代码。更有趣的是,我从Release文件夹启动的应用程序无法正常工作(从Debug文件夹启动时它工作正常)。这有点难以解释-如果您需要更多信息,请随时询问。 最佳答案 对于其他遇到问题的人,这可能是因为选中了“启用VisualStudio托管进程”复选框(在项目属性->“调试”选项卡中)在您的发布配置下。您可能希望它只在您的调试配置下检查只需删除Release文件夹中的所有文件或对项目运行Clean;然

C# 退出 using() block ,线程仍在作用域对象上运行

如果线程正在运行通过退出usingblock释放的对象中的方法,线程会发生什么情况?示例:using(SomeObjectobj=newSomeObject()){obj.param=10;ThreadnewThread=newThread(()=>{obj.Work();});newThread.Start();}...obj.Work()在新线程上运行,但obj是一个IDisposable对象,通常会在usingblock退出时释放。如果线程在usingblock结束后继续运行会怎样?只有在线程完成后对象才会被释放吗?还是会断线?谢谢。 最佳答案

c# - `Fault` try block 中的关键字

在探索反射器中的程序集时,我偶然发现了编译器生成的类中的fault关键字。你们知道这个关键字的意思吗?C#privateboolMoveNext(){boolflag;try{//[...]}fault{this.Dispose();}returnflag;}vb.netPrivateFunctionMoveNext()AsBooleanDimflagAsBooleanTry'[...]FaultMe.DisposeEndTryReturnflagEndFunction 最佳答案 Doanyofyouknowthemeaningif

c# - WebAPI 帮助页面 : disable for Production release

我在VS2010中使用较旧的WCF框架开发了许多内部REST接口(interface)。它生成帮助页面的能力对于DEV和QA平台来说很方便,但对于生产版本来说,很容易禁用生成web.config文件中的这些帮助页面:我现在转而使用WebAPI框架(目前是VS2012上的第1版),但关闭此功能似乎并不简单(即我找不到任何有关如何关闭此功能的信息)在web.config文件中执行此操作)。当然,我可以继续在代码中手动执行此操作,但肯定有更简单的方法;类似于WCF如上所述的做法。我想使用web.config文件方法,因为我已经为其他设置准备了web.release.config转换文件。如有