Questions tagged «c#»

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

15
在Linq中创建批次
有人可以建议一种在linq中创建一定大小的批次的方法吗? 理想情况下,我希望能够以一定数量的可配置量执行操作。
104 c#  linq 

2
生成不带连字符的GUID
我正在代码中使用以下语句生成GUID byte[ ] keyBytes = Encoding.UTF8.GetBytes( Guid.NewGuid( ).ToString( ).Substring( 0, 12 ) ); 但是,当生成GUID时,我发现它也包含连字符。如何生成仅包含字母(大写和小写)和数字的GUID?我不要连字符。有人可以给我这样的主意吗?
104 c#  winforms 

13
如何在ASP.NET Core Webapi控制器中读取请求正文?
我试图读取OnActionExecuting方法中的请求正文,但我总是喜欢null该正文。 var request = context.HttpContext.Request; var stream = new StreamReader(request.Body); var body = stream.ReadToEnd(); 我试图将流位置显式设置为0,但这也没有用。因为这是ASP.NET CORE,所以我认为情况几乎没有什么不同。我可以在这里看到所有有关旧webapi版本的示例。 还有其他方法吗?

17
为什么/何时应该重写ToString?
我正在研究C#,不知道覆盖的目的和好处是什么ToString,如下面的示例所示。 是否可以使用不带覆盖的通用方法,以更简单的方式完成此操作? public string GetToStringItemsHeadings { get { return string.Format("{0,-20} {1, -20}", "Office Email", "Private Email"); } } public override string ToString() { string strOut = string.Format("{0,-20} {1, -20}", m_work, m_personal); return strOut; }
103 c#  overriding 

8
如何在WinForms ContextMenu中添加分隔符?
在我的控制之内,我有: ContextMenu = new ContextMenu(); ContextMenu.MenuItems.Add(new MenuItem("&Add Item", onAddSpeaker)); ContextMenu.MenuItems.Add(new MenuItem("&Edit Item", onEditSpeaker)); ContextMenu.MenuItems.Add(new MenuItem("&Delete Item", onDeleteSpeaker)); ContextMenu.MenuItems.Add( ??? ); ContextMenu.MenuItems.Add(new MenuItem("Cancel")); 如何在此ContextMenu中添加分隔线?

12
“不支持给定路径的格式。”
我的网络服务中有以下代码: string str_uploadpath = Server.MapPath("/UploadBucket/Raw/"); FileStream objfilestream = new FileStream(str_uploadpath + fileName, FileMode.Create, FileAccess.ReadWrite); 有人可以通过代码第2行中的此错误消息来帮助我解决问题。 不支持给定路径的格式。 文件夹的权限设置为对所有人都有完全访问权限,这是文件夹的实际路径。 断点给了我str_uploadpathas 的值C:\\webprojects\\webservices\\UploadBucket\\Raw\\。 这个字符串怎么了?
103 c#  .net  webforms  upload  stream 



21
*可以*是静态的C#方法应该是静态的吗?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 可以是静态的C#方法应该是静态的吗? 我们今天在讨论这个问题,我有点担心。想象一下,您有一个很长的方法需要重构几行。新方法可能会从父方法中获取一些局部变量并返回一个值。这意味着它可能是静态的。 问题是:它应该是静态的吗?它在设计或选择上不是静态的,仅就其本质而言,因为它不引用任何实例值。
103 c#  static  methods 


8
XDocument.ToString()删除XML编码标签
有什么方法可以在toString()函数中获取xml编码吗? 例: xml.Save("myfile.xml"); 导致 <?xml version="1.0" encoding="utf-8"?> <Cooperations> <Cooperation> <CooperationId>xxx</CooperationId> <CooperationName>Allianz Konzern</CooperationName> <LogicalCustomers> 但 tb_output.Text = xml.toString(); 导致这样的输出 <Cooperations> <Cooperation> <CooperationId>xxx</CooperationId> <CooperationName>Allianz Konzern</CooperationName> <LogicalCustomers> ...
103 c#  linq-to-xml 

5
为什么我可以创建一个名为“ var”的类?
varC#中不是关键字吗?但是为什么我可以这样做: public class var { } public class main { public static void main(string[] args) { var testVar = new var(); } } 该var是在代码中使用的是var这是在之前声明的类main类。而且编译器甚至没有抱怨。 当我这样做时: public class int { } 或这个: public class true { } 编译器说int或是true关键字,不能那样使用。为什么不一样var呢?
103 c#  .net-4.0 

1
设置IIS池的LoadUserProfile时会发生什么情况?
我面临以下问题。 我运行以下代码 var binaryData = File.ReadAllBytes(pathToPfxFile); var cert = new X509Certificate2(binaryData, password); 在两个过程中。其中一个进程运行,LOCAL_SYSTEM并且此代码成功。另一个在IIS内以属于“用户”本地组的本地用户帐户运行,并且出现以下异常: System.Security.Cryptography.CryptographicException Object was not found. at System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32 hr) at System.Security.Cryptography.X509Certificates.X509Utils._LoadCertFromBlob(Byte[] rawData, IntPtr password, UInt32 dwFlags, Boolean persistKeySet, SafeCertContextHandle& pCertCtx) at System.Security.Cryptography.X509Certificates.X509Certificate.LoadCertificateFromBlob(Byte[] rawData, Object password, X509KeyStorageFlags keyStorageFlags) at System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(Byte[] rawData, String password) //my code here 因此,我用Google搜索了一下,找到了类似问题的答案。我尝试启用LoadUserProfile应用程序池,并且现在可以使用。 问题是我不了解设定时到底发生了LoadUserProfile什么以及可能产生的后果。我的意思是,如果这是一件“好”的事情,那么为什么默认情况下它不处于“开启”状态?为什么它在那里呢? 当我LoadUserProfile在IIS池中进行设置时,究竟会发生什么,会带来什么负面影响?

5
从数据读取器填充数据表
我在C#(MS VS2008)中做一个基本的事情,除了特定的代码外,还有更多关于适当设计的问题。 我正在创建一个数据表,然后尝试从一个数据读取器(基于SQL存储过程)加载该数据表。我想知道的是,加载数据表的最有效方法是执行while语句,还是有更好的方法。 对我来说,唯一的缺点是我必须手动输入要在while语句中添加的字段,但是我也不知道如何自动执行该操作,因为我不想从SP中选择所有字段,但是在我看来这并不是什么大问题。 尽管我对代码本身并不满意,甚至对我所问的内容并不满意,但我还是将代码片段包括在我所做的全部工作之下。此外,我想知道自己的方法是什么,如果我的策略错误/效率低下,我将在稍后寻求代码帮助。 var dtWriteoffUpload = new DataTable(); dtWriteoffUpload.Columns.Add("Unit"); dtWriteoffUpload.Columns.Add("Year"); dtWriteoffUpload.Columns.Add("Period"); dtWriteoffUpload.Columns.Add("Acct"); dtWriteoffUpload.Columns.Add("Descr"); dtWriteoffUpload.Columns.Add("DEFERRAL_TYPE"); dtWriteoffUpload.Columns.Add("NDC_Indicator"); dtWriteoffUpload.Columns.Add("Mgmt Cd"); dtWriteoffUpload.Columns.Add("Prod"); dtWriteoffUpload.Columns.Add("Node"); dtWriteoffUpload.Columns.Add("Curve_Family"); dtWriteoffUpload.Columns.Add("Sum Amount"); dtWriteoffUpload.Columns.Add("Base Curr"); dtWriteoffUpload.Columns.Add("Ledger"); cmd = util.SqlConn.CreateCommand(); cmd.CommandTimeout = 1000; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "proc_writeoff_data_details"; cmd.Parameters.Add("@whoAmI", SqlDbType.VarChar).Value = WindowsIdentity.GetCurrent().Name; cmd.Parameters.Add("@parmEndDateKey", SqlDbType.VarChar).Value = myMostRecentActualDate; cmd.Parameters.Add("@countrykeys", SqlDbType.VarChar).Value = …
103 c#  .net  ado.net 


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.