3 回答
TA贡献1877条经验 获得超6个赞
我不知道它是什么db,为什么不想要使用它enum(因为您可以做到这一点,请参阅下文),但这也许可以帮助您:
public class Countries
{
public const string India = "India";
...
}
或者,如果您想要国家/地区的ID,则可以使用
public class Countries
{
public const int India = 42;
...
}
可以通过以下方式访问这两种建议的方法:
var india = Countries.India;
我知道没有人问这个问题,但是由于问题表明该问题可能是XY问题,因此我建议您采用以下方法:
假设您的国家/地区表如下所示:
CountryID | Name
------------------------------------
1 | India
42 | United States of America
那么您可以创建一个如下所示的枚举:
public enum Country
{
India = 1,
[Description("United States of America")]
United States = 42
}
而且您不会丢失任何信息。
TA贡献1842条经验 获得超12个赞
如果您想让智能感知向您显示集合中的数据,那不是它的工作原理。您的C#源代码无法使用数据库中的数据,因为数据库中的数据可能会更改,而您的代码仍会引用某些固定名称属性。
如果您想在按下点号'。'时向intellisense显示一些可用的功能(扩展功能),则必须在文件开头包含在其中定义这些功能的名称空间,以使intellisense显示该功能。可能性。
到目前为止,尤其是执行验证最有用的方法之一是使用:
using System.Linq;
在文件的开头
然后,您可以使用像这样的东西:
if (db.Countries.Any(c => c.Name == "India" ) {
// this block will execute only if at least one country is India
}
foreach (var country in db.Countries.Where(c => c.Name == "India")) {
// this block will execute for each element in countries that has Name equals India and attach the country to some variable so you can perform more work with it
}
如果您希望以某种方式拥有固定值列表(例如枚举),则一些有趣的方法是使用常量,这已在Thomas的答案中得到了证明。
- 3 回答
- 0 关注
- 186 浏览
添加回答
举报