Questions tagged «c#»

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

8
C#中对象的内存地址
我前段时间编写了一个函数(针对.NET 3.5),现在我已升级到4.0 我无法正常工作。 该函数是: public static class MemoryAddress { public static string Get(object a) { GCHandle handle = GCHandle.Alloc(a, GCHandleType.Pinned); IntPtr pointer = GCHandle.ToIntPtr(handle); handle.Free(); return "0x" + pointer.ToString("X"); } } 现在,当我调用它时-MemoryAddress.Get(new Car(“ blue”)) public class Car { public string Color; public Car(string color) { Color = color; } } …
78 c#  .net 

21
WPF MVVM:如何关闭窗口
我有一个Button它被点击时关闭我的窗口: <Button x:Name="buttonOk" IsCancel="True">Ok</Button> 没关系,直到我Command在Buttonie中添加一个 <Button x:Name="buttonOk" Command="{Binding SaveCommand}" IsCancel="True">Ok</Button> 现在大概无法关闭,因为我正在处理Command。我可以通过插入EventHandler并调用this.Close()即解决此问题 <Button x:Name="buttonOk" Click="closeWindow" Command="{Binding SaveCommand}" IsCancel="True">Ok</Button> 但现在我的代码后面有代码,即方法SaveCommand。我正在使用MVVM模式,这SaveCommand是我的代码后面唯一的代码。 我该怎么做才能不使用后面的代码?
78 c#  .net  wpf  xaml  mvvm 

10
编译错误:两个DLL中都存在类型'ASP.global_asax'
我刚刚将另一个项目页面及其dll集成到我现有项目的Bin /文件夹中。我的项目框架是3.5。当我尝试构建项目或解决方案时,会引发以下错误: “类型'ASP.global_asax'既存在于'c:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Temporary ASP.NET Files \ timesheet \ 15a75c54 \ 898b48b9 \ assembly \ dl3 \ 58b062b2 \ 00ceda54_c98cc801 \ App_global.asax .DLL'和'c:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Temporary ASP.NET Files \ timesheet \ 15a75c54 \ 898b48b9 \ App_global.asax.q_h6dbfx.dll'c:\ …
78 c#  asp.net  .net  dll 

8
如何正确并完全关闭/重置TcpClient连接?
关闭或重置TcpClient连接的正确方法是什么?我们拥有与硬件进行通信的软件,但是有时出了点问题,在重新启动软件之前,我们不再与之通信。 我尝试过强制TcpClient.Close()甚至将其设置为null,但这不起作用。仅完全重新启动软件即可。 有什么建议吗? 我不能使用using关键字,因为TpcClient仅在一个位置定义,而是在整个库中使用。(并且在任何给定时间只有一个连接) 这是一个处理通讯的库。软件本身可以调用Controller类(代表硬件)的ResetConnection()方法。 目前看起来像 if (tcpClient != null) { tcpClient.Close(); tcpClient = null; } 现在,从我在这里阅读的内容中,我应该使用tcpClient.Dispose()代替“ = null” 我将尝试一下,看看是否有所作为。
78 c#  .net  tcp 


1
在未先将其转换为委托或表达式树类型的情况下,无法将lambda表达式用作动态调度的操作的参数
我正在使用.NET4.5和VS2013,我有dynamic从数据库获取结果的查询。 dynamic topAgents = this._dataContext.Sql( "select t.create_user_id as \"User\", sum(t.netamount) as \"Amount\" from transactiondetail t where t.update_date > sysdate -7 group by t.create_user_id") .QueryMany<dynamic>(); 以下语句由于编译错误Cannot use a lambda expression as an argument to a dynamically dispatched operation without first casting it to a delegate or expression tree type 而失败,甚至没有允许我运行它 topAgents.ToList().Select(agent …
78 c#  linq  lambda  .net-4.5 

15
500.19-内部服务器错误-无法访问请求的页面,因为该页面的相关配置数据无效
在每个人都读之前,我只想说我知道那里有相关的线程,但是我已经尝试过或者不理解。话虽如此,这里什么都没有... 我试图在IIS中运行MVC Web应用程序。不幸的是,我绝对陷入了这个错误: HTTP Error 500.19 - Internal Server Error The Request page cannot be accessed becasue the related configuration data for the page is invalid. Module: IIS Web Core Notification: BeginRequest Handler: Not yet determined Error Code: 0x80070005 Config Error: Cannot read configuration file due to insufficient permissions Config …


5
如何定义基本类型的泛型类型限制?
我有以下具有通用类型的方法: T GetValue<T>(); 我想将T限制为基本类型,例如int,string,float,但不限于类类型。我知道我可以为这样的类类型定义泛型: C GetObject<C>() where C: class; 我不确定原始类型是否可行,如何确定。

1
具有不同身份验证标头的HttpClient单个实例
鉴于.net HttpClient在设计时考虑了重用,并且旨在长期存在,并且在短期实例中已报告内存泄漏。在为多个用户调用端点时,要使用不同的承载令牌(或任何授权标头)对给定端点进行静态调用的地方有哪些指导方针? private void CallEndpoint(string resourceId, string bearerToken) { httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("bearer", bearerToken); var response = await httpClient.GetAsync($"resource/{resourceid}"); } 鉴于上述代码可以由Web应用程序上的任意数量的线程调用,因此很可能第一行中设置的标头与调用资源时使用的标头不同。 在不使用锁引起争用和维护无状态Web应用程序的情况下,为单个端点创建和部署HttpClient的推荐方法是什么(我目前的做法是为每个端点创建单个客户端)? 生命周期 尽管HttpClient确实间接实现了IDisposable接口,但是HttpClient的推荐用法是不要在每次请求后都将其丢弃。只要您的应用程序需要发出HTTP请求,HttpClient对象就可以存在。在多个请求中都存在一个对象,这为设置DefaultRequestHeaders提供了空间,并且使您不必像HttpWebRequest那样在每个请求中都重新指定诸如CredentialCache和CookieContainer之类的内容。

5
C#中的array.map()示例?
考虑以下常见的JavaScript构造 var ages = people.map(person => person.age); 提供期望的结果,这是一个年龄段。 在C#中这等效于什么?请提供一个简单的示例。该文档指出select或可能出现,selectAll但我找不到在线示例或可以粘贴并起作用的任何其他SO问题。 如果可能,给出一个示例,将以下数组{1,2,3,4}转换为following {'1a','2a','3a','4a'}。对于每个元素,将“ a”附加到末尾,将其从Integer转换为String。

8
属性和变量有什​​么区别
我对理解属性和变量感到困惑 public class ABC() { public int A; public int B { get; set; } } A和B之间的确切区别是什么?
78 c# 


9
如何在asp.net核心中获取项目的根目录。Directory.GetCurrentDirectory()在Mac上似乎无法正常工作
我的项目具有以下文件夹结构: 项目, 项目/数据 项目/引擎 项目/服务器 项目/前端 在服务器中(在Project / Server文件夹中运行),我指的是这样的文件夹: var rootFolder = Directory.GetCurrentDirectory(); rootFolder = rootFolder.Substring(0, rootFolder.IndexOf(@"\Project\", StringComparison.Ordinal) + @"\Project\".Length); PathToData = Path.GetFullPath(Path.Combine(rootFolder, "Data")); var Parser = Parser(); var d = new FileStream(Path.Combine(PathToData, $"{dataFileName}.txt"), FileMode.Open); var fs = new StreamReader(d, Encoding.UTF8); 在我的Windows机器上,此代码可以正常工作,因为已Directory.GetCurrentDirectory()转至当前文件夹,并且可以 rootFolder.Substring(0, rootFolder.IndexOf(@"\Project\", StringComparison.Ordinal) + @"\Project\".Length); 获取我项目的根文件夹(不是bin或debug文件夹)。但是,当我在Mac上运行它时,它却把Directory.GetCurrentDirectory()我发送到/ usr // …
78 c#  asp.net-core 

11
优化C#/。NET程序的技巧[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 如今,优化似乎是一门失传的艺术。难道没有时间所有程序员都从他们的代码中压缩每一盎司的效率吗?在雪地里走五英里时经常这样做吗? 本着使人流连忘返的精神,您了解一些简单(或复杂)更改以优化C#/。NET代码的技巧吗?由于涉及的范围如此广泛,这取决于要完成的任务,因此有助于提供提示的上下文。例如: 当将许多字符串连接在一起时,请StringBuilder改用。请参阅底部的链接以获取有关此方面的警告。 使用string.Compare两个字符串比较,而不是做这样的事情string1.ToLower() == string2.ToLower() 到目前为止,似乎普遍存在的共识是关键。这种错误的意思是:测量并不能告诉您问题出在哪里,如果遇到瓶颈,该怎么办。我曾经遇到过字符串连接瓶颈,却不知道该怎么做,因此这些技巧很有用。 我发布此文章的目的是为常见的瓶颈留出一席之地,以及在遇到瓶颈之前如何避免它们。甚至没有人必须盲目遵循的即插即用代码,而是更多地了解应该至少在某种程度上考虑性能,并且要注意一些常见的陷阱。 我可以看到,虽然也可能知道技巧为什么有用以及应该在哪里应用,这可能会很有用。作为StringBuilder提示,我在Jon Skeet的站点上找到了我很早以前所做的帮助。
78 c#  .net  optimization 

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.