Questions tagged «.net»

请勿使用有关.NET Core的问题,而应使用[.net-core]。.NET框架是主要为Microsoft Windows操作系统设计的软件框架。它包括基类库,公共语言运行时(通常称为CLR),公共类型系统(通常称为CTS)和动态语言运行时的实现。它支持多种编程语言,包括C#,VB.NET,F#和C ++ / CLI。

15
什么时候应该使用结构而不是类?
MSDN说,当您需要轻量级对象时,应该使用结构。在某个结构比一类更可取的情况下,还有其他情况吗? 有些人可能忘记了: 结构可以有方法。 结构不能被继承。 我了解结构和类之间的技术差异,只是对何时使用结构感觉不太好。
303 .net  oop 

12
如何仅将Linq中DateTime类型中的没有日期的Date与带有实体框架的SQL进行比较?
有没有一种方法可以比较两个DateTime变量,Linq2Sql但是可以忽略“时间”部分。 该应用程序将项目存储在数据库中并添加发布日期。我想保留确切的时间,但仍然可以按时完成日期。 我想进行比较12/3/89 12:43:34,12/3/89 11:22:12而忽略了一天中的实际时间,因此两者都被认为是相同的。 我想我可以将一天中的所有时间都设置为00:00:00比较之前,但实际上我确实想知道一天中的时间,我也只想按日期进行比较。 我发现一些具有相同问题的代码,它们分别比较年,月和日。有一个更好的方法吗?

6
Convert.ChangeType()在可空类型上失败
我想将字符串转换为对象属性值,我将其名称作为字符串。我正在尝试这样做: string modelProperty = "Some Property Name"; string value = "SomeValue"; var property = entity.GetType().GetProperty(modelProperty); if (property != null) { property.SetValue(entity, Convert.ChangeType(value, property.PropertyType), null); } 问题在于,当属性类型为可为空的类型时,这将失败并引发Invalid Cast Exception。这不是无法转换的值的情况-如果我手动执行此操作(例如DateTime? d = Convert.ToDateTime(value);),它们将起作用(我已经看到一些类似的问题,但仍然无法使它起作用)。
301 c#  .net  reflection 

11
将UTC / GMT时间转换为当地时间
我们正在为Web服务客户端开发C#应用程序。这将在Windows XP PC上运行。 Web服务返回的字段之一是DateTime字段。服务器返回GMT格式的字段,即末尾带有“ Z”。 但是,我们发现.NET似乎进行了某种隐式转换,并且时间总是12小时。 下面的代码示例在某种程度上解决了这一问题,因为12小时的差异已经消失了,但它没有考虑到新西兰的夏令时。 CultureInfo ci = new CultureInfo("en-NZ"); string date = "Web service date".ToString("R", ci); DateTime convertedDate = DateTime.Parse(date); 根据此日期网站: UTC / GMT偏移 标准时区:UTC / GMT +12小时 夏时制:+1小时 当前时区偏移:UTC / GMT +13小时 我们如何调整加班时间?可以通过编程方式完成,还是在PC上进行某种设置?
301 c#  .net  datetime  utc 

21
如何将字符串解析为可为null的int
我想在C#中将字符串解析为可为null的int。即。我想找回字符串的int值,如果无法解析,则返回null。 我有点希望这能起作用 int? val = stringVal as int?; 但这是行不通的,所以我现在的方式是编写此扩展方法 public static int? ParseNullableInt(this string value) { if (value == null || value.Trim() == string.Empty) { return null; } else { try { return int.Parse(value); } catch { return null; } } } 有更好的方法吗? 编辑: 感谢您的TryParse建议,我的确知道这一点,但效果差不多。我更想知道是否有一个内置的框架方法可以直接解析为可为null的int?
300 c#  .net  string  .net-3.5  nullable 

3
.NET 4.0具有新的GAC,为什么?
%windir%\Microsoft.NET\assembly\是新的GAC。这是否意味着现在我们必须管理两个GAC,一个用于.NET 2.0-3.5应用程序,另一个用于.NET 4.0应用程序? 问题是,为什么?
300 .net  .net-4.0  gac 

26
如何在ASP.NET MVC中获取Web应用程序的基本URL?
如何快速确定ASP.NET MVC应用程序的根URL?也就是说,如果IIS设置为通过http://example.com/foo/bar为我的应用程序提供服务,那么我希望能够以一种可靠的方式获取该URL,而无需涉及从请求并以某种易碎的方式将其切碎,如果我重新路由操作,该方法会中断。 我需要基本URL的原因是,此Web应用程序调用了另一个需要回调方Web应用程序根的应用程序。
300 .net  asp.net  asp.net-mvc  iis 

4
为什么HttpClient BaseAddress不起作用?
考虑以下代码,其中BaseAddress定义了部分URI路径。 using (var handler = new HttpClientHandler()) using (var client = new HttpClient(handler)) { client.BaseAddress = new Uri("http://something.com/api"); var response = await client.GetAsync("/resource/7"); } 我希望这能向发出GET请求http://something.com/api/resource/7。但事实并非如此。 经过一番搜索,我找到了这个问题和答案:具有BaseAddress的HttpClient。建议将其放置/在末尾BaseAddress。 using (var handler = new HttpClientHandler()) using (var client = new HttpClient(handler)) { client.BaseAddress = new Uri("http://something.com/api/"); var response = await client.GetAsync("/resource/7"); } 它仍然不起作用。这里是文档:HttpClient.BaseAddress这是怎么回事?

2
忽略Entity Framework 4.1 Code First中的类属性
我的理解是,该[NotMapped]属性直到CTP中的EF 5才可用,因此我们不能在生产中使用它。 如何在EF 4.1中标记要忽略的属性? 更新:我注意到其他奇怪的事情。我可以使用该[NotMapped]属性,但是由于某些原因,即使使用public bool Disposed { get; private set; }标记为,EF 4.1仍会在数据库中创建一个名为Disposed的列[NotMapped]。IDisposeable当然,该类实现了,但我不认为这应该有多重要。有什么想法吗?

21
使用HTTPWebrequest上传文件(多部分/表单数据)
是否有任何类,库或某些代码段可帮助我使用HTTPWebrequest上传文件? 编辑2: 我不想上传到WebDAV文件夹或类似的文件。我想模拟一个浏览器,就像您将头像上传到论坛或通过Web应用程序中的表单上传文件一样。上传到使用多部分/表单数据的表单。 编辑: WebClient不能满足我的要求,因此我正在寻找HTTPWebrequest解决方案。

16
英文异常消息?
我们通过将Exception.Message写入文件来记录系统中发生的所有异常。但是,它们是按照客户的文化来编写的。土耳其语的错误对我来说意义不大。 那么,如何在不改变用户文化的情况下用英语记录错误消息呢?

8
如何使用OpenFileDialog选择文件夹?
如何使用 OpenFileDialog选择文件夹? 我打算使用以下项目:https : //github.com/scottwis/OpenFileOrFolderDialog 但是,我遇到了一个问题。它使用GetOpenFileName功能和OPENFILENAME结构。并将OPENFILENAME成员命名为templateID。它是对话框模板的标识符。项目还包含res1.rc文件和模板化对话框init。但是我不知道如何将此文件附加到我的C#项目中。 有没有更好的方法来使用OpenFileDialog选择文件夹?

20
如何检测文本文件的编码/代码页
在我们的应用中,我们收到的文本文件(.txt,.csv从不同的来源,等等)。读取时,这些文件有时包含垃圾,因为这些文件是在其他/未知代码页中创建的。 有没有办法(自动)检测文本文件的代码页? 的detectEncodingFromByteOrderMarks,对StreamReader构造,工程UTF8 和其他的Unicode标文件,但是我正在寻找一种方法来检测代码页,像ibm850,windows1252。 感谢您的回答,这就是我所做的。 我们收到的文件来自最终用户,他们不了解代码页。接收者也是最终用户,到目前为止,这是他们对代码页的了解:代码页存在并且令人讨厌。 解: 在记事本中打开收到的文件,查看乱码的文本。如果有人叫弗朗索瓦(François)之类的东西,凭着您的智慧,您就可以猜到。 我创建了一个小应用程序,用户可用来打开文件,并输入一个文本,用户知道使用正确的代码页时它将出现在文件中。 循环浏览所有代码页,并使用用户提供的文本显示提供解决方案的代码页。 如果弹出一个以上的代码页,请要求用户指定更多文本。

16
引入FOREIGN KEY约束可能会导致循环或多个级联路径-为什么?
我已经为此努力了一段时间,无法完全了解发生了什么。我有一个包含Sides(通常为2)的Card实体-Cards和Sides都有一个Stage。我正在使用EF Codefirst迁移,并且迁移因以下错误而失败: 在表“ Sides”上引入FOREIGN KEY约束“ FK_dbo.Sides_dbo.Cards_CardId”可能会导致循环或多个级联路径。指定ON DELETE NO ACTION或ON UPDATE NO ACTION,或修改其他FOREIGN KEY约束。 这是我的银行卡实体: public class Card { public Card() { Sides = new Collection<Side>(); Stage = Stage.ONE; } [Key] [Required] public virtual int CardId { get; set; } [Required] public virtual Stage Stage { get; set; } [Required] [ForeignKey("CardId")] …

4
如何限制Parallel.ForEach?
我有一个Parallel.ForEach()异步循环,可以通过该循环下载一些网页。我的带宽有限,因此每次只能下载x页,但是Parallel.ForEach执行所需网页的整个列表。 在运行Parallel.ForEach时,是否可以限制线程数或任何其他限制器? 演示代码: Parallel.ForEach(listOfWebpages, webpage => { Download(webpage); }); 真正的任务与网页无关,因此创造性的网络爬网解决方案将无济于事。

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.