Tag: .net

将varchar数据类型转换为日期时间数据类型会导致超出范围的值错误

将varchar数据类型转换为日期时间数据类型会导致超出范围的值错误 我正在尝试使用表单将数据输入到我的表中,表单validation和sql服务器中的日期格式都是dd / mm / yy,但是当我尝试从表单提交数据时,日期高于12 (例如13/12/2012)它抛出一个exception,其原因是“将varchar数据类型转换为日期时间数据类型导致超出范围的值错误”,如果我尝试在表单中输入数据以mm / dd / yy格式表示“错误的日期格式”,这意味着dd / mm / yy格式是正确的格式 这是我的表格的代码如下: private void btnAddProject_Click(object sender, EventArgs e) { DateTime startDate; DateTime endDate; if (txtProjectName.Text == “”) //client side validation { MessageBox.Show(“Enter Project Name”); return; } try { startDate = DateTime.Parse(txtProjectStart.Text); endDate = DateTime.Parse(txtProjectEnd.Text); } catch (Exception) { MessageBox.Show(“Wrong Date Format”); […]

Net TCP绑定:无法识别URI前缀

这真的让我困扰了几个小时。 我使用TCP绑定创建了最简单的WCF服务。 namespace WcfTcpService { public class TestTcpService : ITestTcpService { public string Hello(string name) { return “Hello, ” + name + “!”; } } } namespace WcfTcpService { [ServiceContract] public interface ITestTcpService { [OperationContract] string Hello(string name); } } Web.config文件包含以下部分: <!– –> <!—-> 此服务托管在IIS中: 现在,当尝试从客户端应用程序添加对net.tcp://localhost:808/WcfTcpService.TestTcpService的引用时,我一直收到错误: The URI prefix is not recognized. Metadata contains a […]

在datetimepicker winform中禁用某些日期c#

我需要在DateTimePicker中禁用一些日期,这可能吗? 例如,我有一个日期范围:{20/12/2014,2014年12月21日,2014年12月22日,2014年12月23日,2014年12月24日}我需要禁用midle one或者其他情况最后一个,有人可以帮助我吗? dateTimePicker1.MainDate和dateTimePicker1.MaxDate是不够的。 谢谢。

如何正确打开FileStream以与XDocument一起使用

我想使用Linq2XML将一些节点附加到xml文档。 有问题的文件正由其他进程使用,他们应该能够在我更新文件时读取该文件。 所以我提出了这个解决方案,这显然不是正确的方法(方法doc.Save()失败并说另一个进程正在使用该文件): using (FileStream fs = new FileStream(filename, FileMode.Open, FileAccess.ReadWrite, FileShare.Read)) { doc = XDocument.Load(new StreamReader(fs)); doc.Root.Add(entry); doc.Save(filename); fs.Close(); } 任何帮助都非常有用。

使用JSON.NET解析格式为Date(epochTime-offset)的json日期

我在C#中使用Json.net 7.0.1来使用rest API。 问题在于API在其JSON响应中使用的日期格式。 它看起来像这样: /Date(1445301615000-0700)/ 这意味着代表2015-10-19 17:40:15的UTC时间 如果将1445301615000插入纪元时间转换器 ,您会看到它是2015-10- 20 00:40:15。 所以比UTC提前7个小时。 然后他们包括-0700可能是为了抵消回到UTC。 所以,为了给我一个UTC时间,他们发给我UTC + 7-0700。 为什么他们这样做我不知道,但我不能改变它。 我的问题是,如何最好地使Json.NET解析该日期字符串并提出2015-10-19 17:40:15 UTC的DateTime。 我可以编写一个自定义JsonConverter来劫持该值并手动操作它,但我想知道是否有更原生的方法。 我已经尝试将JsonSerializerSettings DateTimeZoneHandling属性更改JsonSerializerSettings DateTimeZoneHandling所有不同的值。 将它设置为Utc只是忽略时区偏移,产生2015-10-20 00:40:15 。 将其设置为Local,Unspecified或2015-10-19 20:40:15都会产生2015-10-19 20:40:15 ,我认为这是因为我的本地时区是UTC-4,所以它试图将该调整应用于2015年的主要日期值-10-20 00:40 我还考虑使用DateFormatString属性来表示预期的日期字符串格式。 但我找不到正确的格式字符串字符来表示这个epochtime-offset格式。 这是一个简化的例子: Person person; string json = @”{ ‘Name’: ‘John’, ‘LastSeen’:’/Date(1445301615000-0700)/’ }”; // 1445301615000 = 2015-10-20 00:40:15 person = JsonConvert.DeserializeObject(json); Console.WriteLine(person.LastSeen); […]

使用reflection,在已存在的对象上调用Field的方法

我有一个名为AccessData的类的实例,它inheritance自DbContext。 所以它是一个entity framework代码第一个上下文类,看起来像这样…… public class AccessData : DbContext { public DbSet apps_AppsList; public DbSet apps_AppsOldList; … //Several other DbSet properties } 使用Reflections,我已经在AccessData对象上找到了这些DbSet属性之一,就像这样…… var listField = accessData.GetType().GetField(typeName + “List”); 我现在需要能够向此DbSet属性添加对象。 鉴于我只有一个表示DbSet字段的FieldInfo对象,如何在AccessData对象上调用此特定Field的Add方法并传入一个对象? 或者换句话说,我该怎么称呼以下内容? accessData..Add(obj); 希望这是有道理的。

为什么Unity在Mono支持.NET 3.5时使用.NET 2.0?

Unity使用Mono以实现多平台兼容性。 因此,使用.NET 4.0或更高版本是没有意义的,因为Mono也不支持它们。 但Mono确实支持3.5,实际上它支持大多数function,所以我想,为什么Unity仍然使用近十年前的.NET版本。 据我所知,大多数(如果不是所有)开发人员都更喜欢稳定性和熟悉度。 我想知道这个决定的可能原因是什么。 特别是因为后来.NET版本引入了几个非常好的function。 Unity的兼容性参考。

如何将VB.Net的CType()转换为C#

我在VB NET有这段代码: CType(pbImageHolder.Image, Bitmap).SetPixel(curPoint.X, curPoint.Y, Color.Purple) 什么是C#适当代码? 先感谢您。

为什么过时会导致错误?

我用: [Obsolete(“Use AnotherMethod() insted.”, false)] 第二个参数为false但Visual Studio为每个过时的方法调用显示Warning as Error,以防止编译项目。 如何让VS将这些调用标记为警告而不是错误?

阿拉伯文字框

我开发了一个网站:有些字段用英文输入,而其他字段用阿拉伯语输入。 现在我想简化用户的输入操作,并希望阿拉伯文本框作为DLL。 我有一个,但它只适用于IE – 不使用Firefox或谷歌浏览器.. 非常感谢.. 如何强制用户用阿拉伯语写? 我的意思是每次尝试更改语言时都没有(ALT + SHIFT)键直接移动光标……如果有任何方式,属性,DLL或者什么都做…