Visual Studio 下C#编译器在解析属性名时如果增加一个get_[您的另一个已经包含在类中属性名]的属性会报错,微软大哥这是什么鬼?

Posted 奇迹从脚开始

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Visual Studio 下C#编译器在解析属性名时如果增加一个get_[您的另一个已经包含在类中属性名]的属性会报错,微软大哥这是什么鬼?相关的知识,希望对你有一定的参考价值。

假设在在我们的vs环境新建一个类 copy以下代码,表面看好像一切都没有问题。

 1 using System;
 2 using System.Collections.Generic;
 3 using System.ComponentModel.DataAnnotations;
 4 using System.ComponentModel.DataAnnotations.Schema;
 5 using System.Linq;
 6 using System.Text;
 7 using System.Threading.Tasks;
 8 
 9 namespace yaou.Data.DomainModels
10 {
11     [Table("coupon_setting")]
12     public class coupon_setting
13     {
14         [Key]
15         [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
16         public int id { get; set; }
17 
18         [MaxLength(20)]
19         public string title { get; set; }
20 
21         public DateTime get_started_on { get; set; }
22 
23         public DateTime get_end_on { get; set; }
24 
25         [DataType(DataType.Date)]
26         public DateTime started_on { get; set; }
27 
28         [DataType(DataType.Date)]
29         public DateTime end_on { get; set; }
30 
31         public virtual category category { get; set; }
32 
33         public int amount { get; set; }
34     }
35 }

同时创建两个属性 一个为get_started_on 一个为started_on;

立马报错。


错误 CS0102 类型“coupon_setting”已经包含“get_started_on”的定义。

开什么玩笑,微软大哥?

期待大家参与,给出答案。

 

以上是关于Visual Studio 下C#编译器在解析属性名时如果增加一个get_[您的另一个已经包含在类中属性名]的属性会报错,微软大哥这是什么鬼?的主要内容,如果未能解决你的问题,请参考以下文章

Visual studio 2015编译项目报错 未能解析目标框架“.NETFramework,Version=v4.0”的 mscorlib

Visual Studio 2003 C#,结构编译错误

如何在Visual Studio中选择C++和C#的编译器版本

使用Visual Studio将C#生成DLL文件的方法

将 Visual Studio 2012 配置为使用 Mono 的 C# 编译器,而不是默认的 csc.exe

如何在Visual Studio中选择C++和C#的编译器版本