Questions tagged «c#»

C#(发音为“ See Sharp”)是由Microsoft开发的一种高级,静态类型的多范例编程语言。C#代码通常针对Microsoft的.NET系列工具和运行时,其中包括.NET Framework,.NET Core和Xamarin。使用此标记可解决有关用C#或C#正式规范编写的代码的问题。

8
LINQ语句比“ foreach”循环快吗?
我正在编写一个“网格渲染”管理器,并认为最好将所有使用同一着色器的网格进行分组,然后在我通过该着色器通道时进行渲染。 我目前正在使用foreach循环,但想知道使用LINQ是否可以提高性能?
124 c#  performance  linq  foreach 

15
填充无效,无法删除?
我已经在网上查找了此异常对我的程序的含义,但似乎找不到解决方案或它在我的特定程序中发生的原因。我一直在使用我的msdn使用Rijndael算法对XmlDocument进行加密和解密的示例。加密工作正常,但是当我尝试解密时,出现以下异常: 填充无效,无法删除 谁能告诉我该如何解决这个问题?下面的代码是我获取密钥和其他数据的地方。如果cryptoMode为false,它将调用解密方法,这是发生异常的地方: public void Cryptography(XmlDocument doc, bool cryptographyMode) { RijndaelManaged key = null; try { // Create a new Rijndael key. key = new RijndaelManaged(); const string passwordBytes = "Password1234"; //password here byte[] saltBytes = Encoding.UTF8.GetBytes("SaltBytes"); Rfc2898DeriveBytes p = new Rfc2898DeriveBytes(passwordBytes, saltBytes); // sizes are devided by 8 because …
124 c#  cryptography 

11
怎么把char转换成int?
什么是一个转换的正确方法char来int?这给出了49: int val = Convert.ToInt32('1'); //int val = Int32.Parse("1"); // Works 我不想转换为字符串然后解析它。
123 c#  .net 

11
通过AJAX将数组传递给mvc Action
我正在尝试通过AJAX将整数数组(或IEnumerable)传递给MVC操作,我需要一些帮助。 javascript是 $.get('/controller/MyAction', { vals: arrayOfValues }, function (data) {... 控制器的动作是 public ActionResult MyAction(IEnumerable<int> arrayOfValues ) 目前,请求的格式为 controller/MyAction?_=1301503418429&arrayOfValues[]=491&arrayOfValues[]=368&arrayOfValues[]=235&arrayOfValues[]=437 因此,我快到了,如果我将方括号取下,则会得到正确的答复。我应该如何将该数组传递到get中,以便控制器可以识别它是什么? 非常感谢您的帮助 戴夫
123 c#  asp.net-mvc  jquery 

5
在WPF中更改光标有时行得通,有时行不通
在几个用户控件上,我通过使用 this.Cursor = Cursors.Wait; 当我点击某些东西时。 现在,我想在WPF页面上单击按钮来执行相同的操作。当我将鼠标悬停在按钮上时,光标变为手形,但是单击它时,光标不会变为等待光标。我想知道这是否与按钮有关,还是因为这是页面而不是用户控件?这似乎是奇怪的行为。
123 c#  wpf 

11
如何检测当前按下的键?
在Windows Forms中,借助Cursors类,您可以随时知道光标的当前位置。 键盘似乎没有相同的功能。是否可以知道是否Shift按下了键? 跟踪每个键盘通知(KeyDown和KeyUp事件)是否绝对必要?
123 c#  .net  winforms  keyboard 

14
如何从ASP.NET中的字符串中删除HTML标签?
使用ASP.NET,如何可靠地剥离给定字符串中的HTML标签(即不使用正则表达式)?我正在寻找类似PHP的东西strip_tags。 例: <ul><li>Hello</li></ul> 输出: “你好” 我尝试不重新发明轮子,但是到目前为止,我还没有找到任何满足我需求的东西。
123 c#  asp.net  html  regex  string 


6
如何在ASP.NET MVC中进行RedirectToAction而不丢失请求数据
使用ASP.NET MVC,在某些情况下(例如,表单提交)可能需要输入RedirectToAction。 一种这样的情况是,您在提交表单后遇到验证错误,需要重定向回表单,但希望该URL反映表单的URL,而不是表单提交的操作页面。 由于我需要表单包含原始POSTed数据,为了用户方便以及验证的目的,如何将数据通过RedirectToAction()?如果使用viewData参数,则我的POST参数将更改为GETparameter。
123 c#  asp.net-mvc 


6
重新共享Ctrl-T映射丢失
我似乎失去了Resharper Ctrl+ T映射,无法快速找到类,我尝试了此处描述的解决方案: 键盘快捷方式在安装了Resharper的Visual Studio中不处于活动状态 具体来说是接受的答案: 我首先尝试重置所有Visual Studio设置(“工具”>“导入和导出设置”>“重置所有设置”),然后转到“ Resharper”>“选项”>“键盘和菜单”,然后重新应用键盘快捷方式。 还有这个: 设置为Resharper /选项/键盘和菜单/无/应用并保存 然后 Resharper /选项/键盘和菜单/设置为Visual Studio /应用并保存 后者不执行任何操作(没有明显的积极结果),前者导致以下结果: 按(Ctrl+ T)。等待第二个和弦。 因此,看起来VS正在尝试处理命令,而不是Resharper。 Alt+ Enter但是可以按预期工作,所以并不是说Resharper完全脱离了。 有想法该怎么解决这个吗?

9
找不到方法:'!! 0 [] System.Array.Empty()'
我使用VS 2015 RC和MVC模板创建了一个新应用,而没有修改任何代码行,我都遇到此错误: Method not found: '!!0[] System.Array.Empty()'. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.MissingMethodException: Method not found: '!!0[] System.Array.Empty()'. Source Error: An …

1
扩展方法可以应用于接口吗?
是否可以将扩展方法应用于接口?(C#问题) 例如,这可以实现以下目的: 创建一个ITopology接口 为此接口创建扩展方法(例如,公共静态int CountNodes(此ITopology topologyIf)) 然后在创建实现ITopology的类(例如MyGraph)时,它将自动具有Count Nodes扩展。 这样,实现接口的类不必具有设置的类名即可与扩展方法中定义的名称保持一致。

3
不对TPL Task对象调用Dispose()是否可以接受?
我想触发任务在后台线程上运行。我不想等待任务完成。 在.net 3.5中,我应该这样做: ThreadPool.QueueUserWorkItem(d => { DoSomething(); }); 在.net 4中,建议使用TPL。我看到的推荐的常见模式是: Task.Factory.StartNew(() => { DoSomething(); }); 但是,该StartNew()方法返回一个Task实现的对象IDisposable。推荐这种模式的人似乎忽略了这一点。有关该Task.Dispose()方法的MSDN文档说: “在释放对任务的最后引用之前,请始终致电Dispose。” 您不能在任务完成之前对其进行调用处置,因此让主线程等待并进行调用处置首先会破坏在后台线程上执行任务的目的。似乎也没有任何可用于清理的完成/完成事件。 Task类的MSDN页面没有对此发表评论,而《 Pro C#2010 ...》这本书推荐了相同的模式,并且对任务处理没有评论。 我知道如果我只留下它,终结器最终会抓住它,但是当我做很多工作而忘了像这样的任务而终结器线程不堪重负时,这会回来咬我吗? 所以我的问题是: 是否可以接受不叫Dispose()就Task在这种情况下类?如果是这样,为什么而且存在风险/后果? 有没有讨论这个的文档? 还是有适当的方法来处理Task我错过的对象? 还是有另一种通过TPL做事忘了任务的方法?

13
log4net无法正常工作
嘿,我的web.config中有此配置 <log4net> <appender name="LogFileAppender" type="log4net.Appender.FileAppender"> <param name="File" value="mylog.log" /> <param name="AppendToFile" value="true" /> <layout type="log4net.Layout.PatternLayout"> <param name="Header" value="" /> <param name="Footer" value="" /> <param name="ConversionPattern" value="%d [%t] %-5p %m%n" /> </layout> </appender> <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" > <layout type="log4net.Layout.PatternLayout"> <param name="Header" value="[Header]\r\n" /> <param name="Footer" value="[Footer]\r\n" /> <param name="ConversionPattern" value="%d [%t] …
123 c#  .net-4.0  log4net 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.