草庐IT

c# - 使用 SmtpClient 发送电子邮件时的故障排除 "Mailbox unavailable. The server response was: Access denied - Invalid HELO name"

我一直在尝试通过C#发送电子邮件。我在Google上搜索了各种示例,并从每个示例和每个人最有可能使用的标准代码中提取了点点滴滴。stringto="receiver@domain.com";stringfrom="sender@domain.com";stringsubject="HelloWorld!";stringbody="HelloBody!";MailMessagemessage=newMailMessage(from,to,subject,body);SmtpClientclient=newSmtpClient("smtp.domain.com");client.Crede

C# 6 自动初始化属性和支持字段的使用

在C#6之前,属性的初始化不使用支持字段来初始化默认值。在C#6中,它使用支持字段来初始化新的Autoinitializationproperties.我很好奇为什么在C#6之前IL使用属性定义来初始化。这有什么具体原因吗?还是在C#6之前没有正确实现?C#6.0之前publicclassPropertyInitialization{publicstringFirst{get;set;}publicstringLast{get;set;}publicPropertyInitialization(){this.First="Adam";this.Last="Smith";}}编译器生成的

c# - 为什么这会出现在我的 C# 字符串 : £ 中

我在c#中有一个字符串初始化如下:stringstrVal="£2000";但是每当我写出这个字符串时,都会写出以下内容:2000英镑它不会用美元来做这件事。我用来写出值的代码示例:System.IO.File.AppendAllText(HttpContext.Current.Server.MapPath("/logging.txt"),strVal);我猜这与本地化有关,但如果C#字符串只是unicode,那么这应该就可以了吗?澄清:更多信息,JonSkeet的回答是正确的,但是我在对字符串进行URLEncode时也遇到了问题。有什么办法可以避免这种情况吗?所以URL编码的字符串看

c# - 使用 c# lambda 将 NameValueCollection 转换为查询字符串是否有效?

在研究如何将NameValueCollection转换为查询字符串时,我遇到了不同的方法。我很好奇更短的lambda语法是否尽可能高效。HowtoconvertNameValueCollectiontoa(Query)String使用迭代函数。publicstaticStringConstructQueryString(NameValueCollectionparameters){Listitems=newList();foreach(Stringnameinparameters)items.Add(String.Concat(name,"=",System.Web.HttpUtili

c# - 使用从数组读取的属性创建 ExpandoObjects 列表

我正在尝试创建对象的动态列表,因为在从文件中读取对象之前,我不知道它们将具有哪些属性。所以假设我在一个数组中有我的对象的属性(例如FirstName、LastName、Email)。我想创建具有上述属性的名为Recipient的动态对象。然后我想创建一个列表并将其中一些对象添加到该列表中。到目前为止我已经完成了以下操作,但我不确定这是否是将属性分配给动态对象的正确方法(“字段”是数组的名称):varpersons=newList();dynamicRecipient=newExpandoObject()asIDictionary;foreach(stringpropertyinfiel

c# - 如何创建一个空的 IOrderedEnumerable<DynamicNode> 和 IEnumerable<IGrouping<string, DynamicNode>>

我需要一种方法来创建一个空的IOrderedEnumerable和IEnumerable>//以上IGroupingDynamicNode被stackoverflow剥离:(原因:我创建了3个空列表类型(IOrdered、IGrouping、IEnumerable),然后基于一些其他信息(用户指定的选项,例如按创建日期排序或按月分组),然后调用一个函数来分配一个列表属于上述类型。(简短片段)//DOESNTWORKTHISISTHEPARTINEEDIEnumerablebaseList=Enumerable.Empty();IOrderedEnumerableorderedList=

c# - 使用 Async 和 Await 进行异步编程

我正在浏览有关如何在C#中进行异步编程的教程,但遇到了一个我不确定如何解决的错误。这是链接:http://msdn.microsoft.com/en-us/library/hh191443.aspx错误是:Cannotfindalltypesrequiredbythe'async'modifier.Areyoutargetingthewrongframeworkversion,ormissingareferencetoanassembly?我的目标是.NET4.0框架,但不确定是否需要任何其他程序集。代码如下:publicasyncTaskAccessTheWebAsync(Class

c# - 在 C# 中替换流中的字符串(不覆盖原始文件)

我有一个文件,我正在将其打开到流中并传递给另一个方法。但是,我想在将流传递给其他方法之前替换文件中的字符串。所以:stringpath="C:/...";Streams=newFileStream(path,FileMode.Open,FileAccess.Read,FileShare.Read);//needtoreplacealloccurrencesof"John"inthefileto"Jack"here.CallMethod(s);不应修改原始文件,只能修改流。最简单的方法是什么?谢谢... 最佳答案 如果您只是按行读入文

c# - 从异步方法将字符串添加到 StringBuilder

我有返回字符串的异步方法(来自网络)。asyncTaskGetMyDataAsync(intdataId);我有:Task[]tasks=newTask[max];for(inti=0;i如何将每个任务的结果附加到StringBuilder?我想知道怎么做A)按照任务创建的顺序B)为了完成任务我该怎么做? 最佳答案 A)InorderoftaskcreationTask[]tasks=newTask()[max];for(inti=0;iB)InorderthattasksfinishTask[]tasks=newTask()[ma

c# - 多列数据转换

我正在从一个数据源接收数据,我需要在将信息发送到UI进行显示之前对其进行转换。我对旋转的概念很陌生,我不确定如何去做。问题分为两部分:形成标题旋转数据以匹配标题注意事项:我不想旋转某些列。我称它们为静态列。我需要旋转某些列以形成多级标题信息。我称它们为动态列有些列需要进行透视,其中包含实际值。我称它们为值列。一个人可以拥有的动态、静态和值列的数量没有限制。假设,当数据到来时,我们首先有静态列的数据,然后是动态列的数据,然后是值列的数据。有关详细信息,请参阅所附图片。虚拟数据:classProgram{staticvoidMain(string[]args){var_staticColu