草庐IT

view-timeline-block

全部标签

c# - 改进/修复 C 样式 block 注释的正则表达式

我正在(用C#)编写一个简单的解析器来处理一种看起来很像经典C的脚本语言。在我的一个脚本文件中,我用来识别/*block注释*/的正则表达式进入了某种无限循环,占用了100%的CPU多年。我使用的正则表达式是这样的:/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/关于为什么这可能被锁定有什么建议吗?或者,我可以改用什么正则表达式?更多信息:使用面向.NET3.5的C#3.0;我正在使用Regex.Match(string,int)方法在字符串的特定索引处开始匹配;我已经让程序运行了一个多小时,但比赛还没有完成;传递给Regex构造函数的选项是Regex

c# - 在 View 中创建 HiddenFor IEnumerable<String>

我有一个IEnumerable属性publicIEnumerableChangesOthersResult{get;set;}我需要从ChangesOthersResult收集所有值并从View发回Controller。我如何遍历Ienumerable并创建将绑定(bind)回Controller中的ViewModel的隐藏字段?foreach(variteminModel.ChangesOthersResult){@Html.HiddenFor(x=>x.ChangesOthersResult);}给我原始SQL语句作为文本。 最佳答案

c# - 为什么 'using' 没有 catch block ?

我理解“使用”的意义在于保证调用对象的Dispose方法。但是应该如何处理“using”语句中的异常呢?如果出现异常,我需要将我的“using”语句包装在trycatch中。例如:假设在使用参数内部创建对象时产生了异常try{//Exceptioninusingparameterusing(SqlConnectionconnection=newSqlConnection("LippertTheLeopard")){connection.Open();}}catch(Exceptionex){}或使用范围内的异常using(SqlConnectionconnection=newSqlCo

c# - block Control+Alt+Delete

我正在用C#做一个在线测验项目。测试客户端是在WindowsXP上运行的Windows桌面应用程序。我需要阻止control+alt+delete组合键以防止学生最小化/关闭应用程序。我可以使用PInvoke。我知道这绝对是可能的,因为我已经看到三个应用程序这样做了。它们都是专有的,所以我无法知道它是如何完成的。 最佳答案 我发现了一种非常丑陋的方法(效果很好)。如果我以独占方式打开taskmgr.exe,那么当用户按下Ctrl+Alt+Del时什么也不会发生。FileStreamfs=newFileStream(System.IO

c# - 重用 XAML block 的最佳方法是什么?

我有很多这样的用户控件:PageManageCustomers.xaml.cs:publicpartialclassPageManageCustomers:BasePage{...}继承自:PageBase.cs:publicclassBasePage:UserControl,INotifyPropertyChanged{...}由于PageBase.cs没有随附的XAML文件,我必须将它引用的XAML放在每个用户控件中继承它,例如以下block在继承PageBase的每个控件的每个XAML文件中重复:我试图将此block放入一个资源文件,但语法不正确,它说:'ResourceDict

c# - 随机无效 View 状态错误

我知道有很多关于这个主题的问题,我已经全部阅读了。我正在使用IIS8、.Net4.5。用户随机收到无效的View状态错误,我无法弄清楚。一旦发生这种情况,他们返回网站的唯一方法就是清除浏览器缓存。在我的web.config中我有:-->...我在虚拟专用服务器上运行,但我还没有找到大于9kb的View状态。我的应用程序池设置为每天凌晨3:00重新启动一次。我的页面使用了更新面板,也许用户正在点击“后退”?但我已经看到它只是访问页面而没有点击返回。我注意到的一件事是我有3个不同的站点使用相同的应用程序池身份,但应用程序池是分开的。machine.xml中没有机器key,只有在我的web.

c# - 使 TypedReference 在方法 block 之外保持事件状态而不返回它

我想假设这个问题的目的是检查是否至少有一种方法,即使是通过最不安全的hack,来保持对非blittable值类型的引用。我知道这种设计类型堪比犯罪;除了学习之外,我不会在任何实际情况下使用它。所以现在请接受阅读异端的不安全代码。我们知道可以通过这种方式存储和增加对blittable类型的引用:unsafeclassFoo{void*_ptr;publicvoidFix(refintvalue){fixed(void*ptr=&value)_ptr=ptr;}publicvoidIncrement(){varpointer=(int*)_ptr;(*pointer)++;}}在安全性方面

c# - 如何通过 Ajax Begin 表单正确使用分部 View

我的index.cshtml中有以下代码@usingKendo.Mvc.UI;@usingxx.Relacionamiento.Modelo.Bussiness.Entities;@usingxx.Relacionamiento.Modelo.Bussiness.Entities.Custom;@modelPresupuestosGenerale@{ViewBag.Title="Index";Layout="~/Views/Shared/_Layout.cshtml";}@Html.Partial("CreateOrEditPresupuestoGeneralxx",Model)然后我

c# - 使用 Reflection.Emit 发出 "using (x) { ... }" block ?

我正在尝试在C#中使用Reflection.Emit来发出using(x){...}block。在我编写代码时,我需要获取当前栈顶,它是一个实现了IDisposable的对象,将其存储在一个局部变量中,在该变量上实现一个usingblock,然后将其放入其中添加更多代码(我可以处理最后一部分。)这是我尝试编译并在Reflector中查看的示例C#代码片段:publicvoidTest(){TestDisposabledisposable=newTestDisposable();using(disposable){thrownewException("Test");}}这在Reflect

c# - 从局部 View 向页面的 <head> 添加 CSS 引用

有没有办法从局部View向页面添加CSS引用,并让它们呈现在页面的中?(根据HTML4.01spec的要求)? 最佳答案 如果您使用的是MVC3和Razor,将每页项目添加到您的部分的最佳方法是:1)从布局页面中调用RenderSection()2)在您的子页面中声明相应的部分:/Views/Shared/_Layout.cshtml:@RenderSection("HeadArea")/Views/Entries/Index.cshtml:@sectionHeadArea{}生成的HTML页面包含一个如下所示的部分: