Questions tagged «c#»

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

3
为什么TypedReference在幕后?它是如此快速和安全……简直太神奇了!
警告:这个问题有点异端...宗教程序员始终恪守良好实践,请不要阅读它。:) 有谁知道为什么不鼓励使用TypedReference(隐式地,由于缺乏文档)? 我发现它有很好的用途,例如,当通过不应该是泛型的函数传递泛型参数时(object如果需要使用值类型,则使用over可能会导致过时或缓慢),需要不透明指针时;或者用于何时需要快速访问数组元素的信息,您可以在运行时找到其规格(使用Array.InternalGetReference)。由于CLR甚至不允许这种类型的错误使用,为什么不鼓励这样做?它似乎并不安全或其他任何东西。 我发现的其他用途TypedReference: C#中的“专业化”泛型(这是类型安全的): static void foo<T>(ref T value) { //This is the ONLY way to treat value as int, without boxing/unboxing objects if (value is int) { __refvalue(__makeref(value), int) = 1; } else { value = default(T); } } 编写可与通用指针一起使用的代码(如果滥用,这将非常不安全,但如果使用正确,则会非常安全): //This bypasses the restriction that you can't have …
128 c#  typedreference 

12
如何在C#屏幕上居中显示窗口?
我需要一种使当前窗口居中的方法。因此,例如,如果用户按下一个按钮,我希望窗口在屏幕上居中。我知道您可以使用startposition属性,但是除了应用程序首次启动时,我无法找到使用该属性的方法。那么如何在屏幕上居中放置表单?
128 c#  winforms  screen  center 

7
XML序列化-隐藏空值
使用标准的.NET Xml序列化器时,有什么方法可以隐藏所有空值?下面是我的类输出的示例。我不想输出可为空的整数,如果它们设置为null。 当前Xml输出: <?xml version="1.0" encoding="utf-8"?> <myClass> <myNullableInt p2:nil="true" xmlns:p2="http://www.w3.org/2001/XMLSchema-instance" /> <myOtherInt>-1</myOtherInt> </myClass> 我想要的是: <?xml version="1.0" encoding="utf-8"?> <myClass> <myOtherInt>-1</myOtherInt> </myClass>


10
在C#中创建常量字典
创建s到s 的常量(运行时永不更改)的最有效方法是什么?stringint 我试过使用const Dictionary,但是没有解决。 我可以用适当的语义实现一个不变的包装器,但这似乎并不完全正确。 对于那些提出要求的人,我正在生成的类中实现IDataErrorInfo,并正在寻找一种方法来使columnName查找进入我的描述符数组。 我不知道(测试时输入错误!d!哦!)该开关接受字符串,所以这就是我要使用的。谢谢!

6
从try catch最终阻止中返回是否是错误的做法?
所以今天早上我遇到了一些看起来像这样的代码: try { x = SomeThingDangerous(); return x; } catch (Exception ex) { throw new DangerousException(ex); } finally { CleanUpDangerousStuff(); } 现在,此代码可以正常编译并且可以正常工作,但是从try块中返回并不适合,特别是如果有关联的final。 我的主要问题是,如果最终抛出了自己的异常,将会发生什么?您有一个返回的变量,但也有一个异常要处理...所以我想知道其他人如何从try块中返回?


2
如何在Razor视图中写评论?
如何在MVC视图中编写注释,该注释不会传输到最终的HTML(即,发送到浏览器,响应)。可以用以下方式发表评论: <!--<a href="https://stackoverflow.com/">My comment</a> --> 但是,它在浏览器的页面源代码中可见。 是否可以仅将“ .cshtml”文件中的注释留给内部使用?

9
从Linq的列表中选择多个字段
在ASP.NET C#中,我有一个结构: public struct Data { public int item1; public int item2; public int category_id; public string category_name; } 我有一个清单。我要选择category_id和category_name,运行的DISTINCT最后一个ORDERBY上category_name。 这是我现在所拥有的: List<Data> listObject = getData(); string[] catNames = listObject .Select(i=> i.category_name) .Distinct() .OrderByDescending(s => s) .ToArray(); 这显然只是获得类别名称。我的问题是,如何获取多个字段,以及将其存储在什么数据结构中(而不是string[])? 编辑 使用结构列表并不是一成不变的。如果建议更改我的支持数据结构以使选择更容易(我将编写很多此类记录),那么我很乐意提出建议。
128 c#  linq  data-structures 

7
WPF中没有Main()?
我是编程方面的初学者,但是我确定通用规则之一是程序以Main()开头。创建WPF项目时看不到一个。是Main()只是在WPF中以不同的方式命名吗?
128 c#  wpf  c#-4.0  main 


4
如何检索LoaderException属性?
更新服务参考时收到错误消息: 自定义工具警告:无法加载一种或多种请求的类型。检索LoaderExceptions属性以获取更多信息。 如何检索LoaderException属性? 更新:重新导入域对象项目时,我的错误消失了。我不知道为什么这可以解决问题,但我很高兴它能正常工作。
128 c#  .net  wcf 

14
MVC Web API:所请求的资源上不存在“ Access-Control-Allow-Origin”标头
我尝试了本文中写的所有内容:http : //www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api,但没有任何效果。我正在尝试从webAPI2(MVC5)获取数据,以使用angularJS在另一个域中使用。 我的控制器看起来像这样: namespace tapuzWebAPI.Controllers { [EnableCors(origins: "http://local.tapuz.co.il", headers: "*", methods: "*", SupportsCredentials = true)] [RoutePrefix("api/homepage")] public class HomePageController : ApiController { [HttpGet] [Route("GetMainItems")] //[ResponseType(typeof(Product))] public List<usp_MobileSelectTopSecondaryItemsByCategoryResult> GetMainItems() { HomePageDALcs dal = new HomePageDALcs(); //Three product added to display the data //HomePagePromotedItems.Value.Add(new HomePagePromotedItem.Value.FirstOrDefault((p) => p.ID == id)); List<usp_MobileSelectTopSecondaryItemsByCategoryResult> items …

16
在JSON.NET中强制转换反序列化的接口
我正在尝试建立一个读取器,该读取器将从各个网站接收JSON对象(考虑信息抓取)并将其转换为C#对象。我目前正在使用JSON.NET进行反序列化过程。我遇到的问题是它不知道如何处理类中的接口级属性。所以自然的东西: public IThingy Thing 会产生错误: 无法创建类型为IThingy的实例。类型是接口或抽象类,无法实例化。 相对于Thingy,让它成为IThingy相对重要,因为我正在处理的代码被认为是敏感的,并且单元测试非常重要。对于像Thingy这样的成熟对象,无法为原子测试脚本模拟对象。它们必须是接口。 我已经研究JSON.NET的文档已有一段时间了,而我在此站点上可以找到的与此相关的问题都来自一年多以前。有什么帮助吗? 另外,如果有关系,我的应用程序是用.NET 4.0编写的。
128 c#  .net  json  json.net 

8
为什么Thread.Sleep如此有害
我经常看到它提到Thread.Sleep();不应使用,但我不明白为什么会这样。如果Thread.Sleep();会引起麻烦,是否有其他相同结果的替代解决方案是安全的? 例如。 while(true) { doSomework(); i++; Thread.Sleep(5000); } 另一个是: while (true) { string[] images = Directory.GetFiles(@"C:\Dir", "*.png"); foreach (string image in images) { this.Invoke(() => this.Enabled = true); pictureBox1.Image = new Bitmap(image); Thread.Sleep(1000); } }
128 c#  multithreading  sleep 

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.