Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 与向实体表添加新字段相比,使用通用属性有什么好处_C#_Asp.net_Performance_Nopcommerce - Fatal编程技术网

C# 与向实体表添加新字段相比,使用通用属性有什么好处

C# 与向实体表添加新字段相比,使用通用属性有什么好处,c#,asp.net,performance,nopcommerce,C#,Asp.net,Performance,Nopcommerce,我想知道使用泛型属性的意义是什么。 它主要是为了方便将来的升级,还是通过使用通用属性而不仅仅是向数据库表中添加新列,对性能有真正的影响/改进 我两个都试过了,看不出有什么不同。 我也做了一些谷歌搜索,但找不到任何描述为什么应该使用泛型属性的内容 如果我们经常使用泛型属性,那么该表将变得相当大,并且如果其他开发人员不使用缓存,那么肯定会对性能产生影响 var ga = cacheManager.Get("BANNER_MANUFACTURER_" + Model.Id, () =>

我想知道使用泛型属性的意义是什么。 它主要是为了方便将来的升级,还是通过使用通用属性而不仅仅是向数据库表中添加新列,对性能有真正的影响/改进

我两个都试过了,看不出有什么不同。 我也做了一些谷歌搜索,但找不到任何描述为什么应该使用泛型属性的内容

如果我们经常使用泛型属性,那么该表将变得相当大,并且如果其他开发人员不使用缓存,那么肯定会对性能产生影响

var ga = cacheManager.Get("BANNER_MANUFACTURER_" + Model.Id, () =>
    {
        var genericAttribute = genericAttributeService.GetAttributesForEntity(Model.Id, "Manufacturer").FirstOrDefault(x => x.Key == "BannerPictureId");
        return genericAttribute;
    });

通常,当您想要存储微小的值时,使用通用属性表。人们使用它有不同的原因。在这种情况下,我想存储一些值,但不想为此创建一个完整的表,因为添加一个表需要更多的代码自定义。在这种情况下,人们使用通用属性表


但到目前为止,对性能没有影响

好的,谢谢你的建议,我注意到表中的所有值都有小值,比如图片ID等,所以我觉得修改表是正确的解决方案。因为我在表中添加了大约12列,所以我不确定哪一个是最好的方法,但这为我澄清了这一点。如果我只是添加一两张图片,我会使用以下属性: