Questions tagged «c#»

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

10
用委托或lambda包装秒表计时?
我正在写这样的代码,做一些快速而肮脏的计时: var sw = new Stopwatch(); sw.Start(); for (int i = 0; i < 1000; i++) { b = DoStuff(s); } sw.Stop(); Console.WriteLine(sw.ElapsedMilliseconds); 肯定有一个方法来调用此位的计时码作为花式schmancy .NET 3.0的λ,而不是(上帝保佑)剪切和粘贴了几次和更换DoStuff(s)用DoSomethingElse(s)? 我知道可以做到这一点,Delegate但我想知道lambda方式。
95 c#  .net  delegates  lambda 


9
装载机锁定错误
我通过在C#中编写代码来构建C ++ dll。 我说错了 检测到LoaderLock消息:尝试在OS Loader锁内进行托管执行。不要尝试在DllMain或图像初始化函数中运行托管代码,因为这样做可能导致应用程序挂起。 我尝试搜索该错误的确切含义,但是我写的文章毫无意义,主要是说这只是一个警告,我应该在Visual Studio中将其关闭。其他解决方案似乎是由于iTunes引起的,或者是使用DirectX进行编程时发生的此问题。我的问题与两个都不相关。 谁能解释,这实际上意味着什么?
95 c#  loaderlock 

3
HttpClient中带有await的异步调用永远不会返回
我正在C#Win8 CP上的一个基于xaml的Metro应用程序中打个电话。此调用仅命中Web服务并返回JSON数据。 HttpMessageHandler handler = new HttpClientHandler(); HttpClient httpClient = new HttpClient(handler); httpClient.BaseAddress = new Uri("http://192.168.1.101/api/"); var result = await httpClient.GetStreamAsync("weeklyplan"); DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(WeeklyPlanData[])); return (WeeklyPlanData[])ser.ReadObject(result); 它挂在,await但http调用实际上几乎立即返回(通过提琴手确认);好像await被忽略了,就挂在那里。 询问之前 -是-专用网络功能已打开。 任何想法为什么会挂起?

4
为什么收益率回报不能出现在带有捕获的try块内?
没关系: try { Console.WriteLine("Before"); yield return 1; Console.WriteLine("After"); } finally { Console.WriteLine("Done"); } 该finally块在整个事情完成执行后运行(即使在枚举完成之前就放弃了枚举,也IEnumerator<T>支持IDisposable提供一种确保这一点的方法)。 但这不行: try { Console.WriteLine("Before"); yield return 1; // error CS1626: Cannot yield a value in the body of a try block with a catch clause Console.WriteLine("After"); } catch (Exception e) { Console.WriteLine(e.Message); } 假设(出于参数考虑)WriteLinetry块中的一个或其他调用引发了异常。继续执行catch块有什么问题? 当然,收益率返回部分(当前)无法抛出任何东西,但是为什么那应该阻止我们封闭try/ catch处理在a之前或之后抛出的异常yield …

6
LINQ使用Max()选择单行
我在NHibernate返回的IQueryable上使用LINQ,我需要在几个字段中选择具有最大值的行。 我简化了我坚持的内容。我需要从我的表中选择一行,并在一个字段中取最大值。 var table = new Table { new Row(id: 1, status: 10), new Row(id: 2, status: 20) } from u in table group u by 1 into g where u.Status == g.Max(u => u.Status) select u 这是不正确的,但我无法制定正确的表格。 顺便说一句,我实际上想实现的目标大致是: var clientAddress = this.repository.GetAll() .GroupBy(a => a) .SelectMany( g => g.Where( …
95 c#  .net  linq 

7
TimeSpan ToString格式
只是好奇,是否可以使用格式字符串输出“ 5h 3m 30s”之类的内容? 例如。(显然是错误的) myTimeSpan.ToString("hh mm ss")
95 c#  .net 

12
如何在ASP.NET MVC中展平通过JsonResult返回的ExpandoObject?
我非常喜欢在运行ExpandoObject时编译服务器端动态对象的过程,但是在JSON序列化过程中很难解决这个问题。首先,我实例化该对象: dynamic expando = new ExpandoObject(); var d = expando as IDictionary<string, object>; expando.Add("SomeProp", SomeValueOrClass); 到目前为止,一切都很好。在我的MVC控制器中,我想将其作为JsonResult发送下来,所以我这样做: return new JsonResult(expando); 这会将JSON序列化为以下内容,供浏览器使用: [{"Key":"SomeProp", "Value": SomeValueOrClass}] 但是,我真正想要看到的是: {SomeProp: SomeValueOrClass} 我知道,如果我使用dynamic而不是ExpandoObject- JsonResult能够将dynamic属性和值序列化为单个对象(没有键或值业务),则可以实现此目的,但是我需要使用的原因ExpandoObject是因为我不知道所有据我所知,直到运行时对象上需要的属性,据我所知,如果dynamic不使用,就无法向a动态添加属性ExpandoObject。 我可能需要在javascript中筛选“键”,“值”业务,但是我希望在将其发送给客户端之前先弄清楚这一点。谢谢你的帮助!

13
如何通过LINQ展平树?
所以我有简单的树: class MyNode { public MyNode Parent; public IEnumerable<MyNode> Elements; int group = 1; } 我有一个IEnumerable<MyNode>。我想将所有列表MyNode(包括内部节点对象(Elements))作为一个平面列表Where group == 1。如何通过LINQ做这样的事情?
95 c#  .net  linq  .net-4.0  tree 


3
RestSharp简单完整的示例[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 4年前关闭。 改善这个问题 我一直在尝试创建一个使用RestSharp调用Rest API的简单原型Web应用程序。 我还没有找到一个很好的例子。任何人都可以分享并指导我访问正确的资源吗?我已经看过以下内容,但没有提供我想要的功能齐全的示例: http://restsharp.org/(没有完整的示例程序) http://www.stum.de/2009/12/22/using-restsharp-to-consume-restful-web-services/(似乎很旧) 在进行原型制作时,出现以下代码错误: RestResponse response = client.Execute(request); *Cannot implicitly convert type 'IRestResponse' to 'RestResponse'. An explicit conversion exists (are you missing a cast?) *
95 c#  rest  restsharp 

7
在不更改数据源的情况下过滤DataGridView
我正在C#Visual Studio 2010中开发用户控件-一种用于过滤datagridview的“快速查找”文本框。它应该适用于3种类型的datagridview数据源:DataTable,DataBinding和DataSet。我的问题是从DataSetView上显示的DataSet对象过滤DataTable。 可能有3种情况(带有DataGridView和TextBox的标准WinForm应用程序示例)-前2种工作正常,第3种存在问题: 1. datagridview.DataSource = dataTable:它可以正常工作, 因此我可以通过设置以下内容进行过滤:dataTable.DefaultView.RowFilter =“ country LIKE'%s%'”; DataTable dt = new DataTable(); private void Form1_Load(object sender, EventArgs e) { dt.Columns.Add("id", typeof(int)); dt.Columns.Add("country", typeof(string)); dt.Rows.Add(new object[] { 1, "Belgium" }); dt.Rows.Add(new object[] { 2, "France" }); dt.Rows.Add(new object[] { 3, "Germany" }); dt.Rows.Add(new object[] { 4, …

9
命名空间和类具有相同的名称?
我正在组织一个库项目,我有一个名为的中央管理器类,Scenegraph以及生活在Scenegraph名称空间中的许多其他类。 我真正想要的是将景图MyLib.Scenegraph作为其他类MyLib.Scenegraph.*,但是似乎唯一的方法是Scenegraph在Scenegraph.cs文件中使所有其他类成为内部类,这太笨拙了。 取而代之的是,我将其组织为Mylib.Scenegraph.Scenegraph和MyLib.Scenegraph.*,但是我发现Visual Studio在某些情况下对于我是引用类还是命名空间感到困惑。 是否有一种组织此程序包的好方法,以便用户使用它而又不会在无法维护的混乱中将我的所有代码混在一起?
95 c#  class  namespaces 

3
如何动态创建新的匿名类?
在C#3.0中,您可以使用以下语法创建匿名类 var o1 = new { Id = 1, Name = "Foo" }; 有没有办法动态地将这些匿名类创建为变量? 例: var o1 = new { Id = 1, Name = "Foo" }; var o2 = new { SQ = 2, Birth = DateTime.Now }; 动态创建示例: var o1 = DynamicNewAnonymous(new NameValuePair("Id", 1), new NameValuePair("Name", "Foo")); var …


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.