Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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# Asp.NET MVC中使用EF的可编辑系统参数?_C#_Asp.net_Asp.net Mvc_Entity Framework - Fatal编程技术网

C# Asp.NET MVC中使用EF的可编辑系统参数?

C# Asp.NET MVC中使用EF的可编辑系统参数?,c#,asp.net,asp.net-mvc,entity-framework,C#,Asp.net,Asp.net Mvc,Entity Framework,在ASP.NET MVC应用程序中存储参数的最佳方式是什么? 我知道Web.config的工作方式,但我觉得它不对,我宁愿将它们放在数据库中的一个2列表中,这样所有内容都可以轻松编辑 我在想:创建一个具有两个属性的modelclass是不是一个好主意:name和value。这样,在后端模块中更改这些值就很容易了 这是一种正确的做事方式吗?还是说它有很多缺点 谢谢 我在一个应用程序上工作过,该应用程序在配置和数据库中都有键/值 配置中键的一个问题是,如果要进行更改,必须更新web.config,这

在ASP.NET MVC应用程序中存储参数的最佳方式是什么? 我知道Web.config的工作方式,但我觉得它不对,我宁愿将它们放在数据库中的一个2列表中,这样所有内容都可以轻松编辑

我在想:创建一个具有两个属性的modelclass是不是一个好主意:name和value。这样,在后端模块中更改这些值就很容易了

这是一种正确的做事方式吗?还是说它有很多缺点


谢谢

我在一个应用程序上工作过,该应用程序在配置和数据库中都有键/值

配置中键的一个问题是,如果要进行更改,必须更新web.config,这将强制重新编译。如果您想在白天对生产进行更改,这很糟糕,因为用户可能会丢失一些数据。。这会迫使您在夜间进行更新,或者执行某种定期维护窗口,并让您的用户知道

另一方面,数据库您可以随时进行更改,下次用户加载特定页面时,他们将看到更新的值,无需重新编译应用程序:我能想到的唯一缺点是,您需要进入生产数据库并进行更改,但如果你对此感到满意,那么这种方式可能更容易,破坏性更小

就安全性而言,我认为两者都同样安全,因为一个在DB服务器上,另一个在WEB服务器上。。您的两台windows服务器都应该具有同等的安全性,并且都有SSL,所以一个等等。现在,SQL 2016提供了大量的加密选项

这些只是我的2美分,显然这里可能有更多的因素在起作用

**编辑


我个人想不出有什么特别的原因为什么不使用实体框架,EF只是一种访问数据的方式。。。。EF主要是我在ASP.NET MVC应用程序中用于数据访问的工具,也是我最习惯使用的工具,因此我在这方面可能有点偏颇。entity framework将以与任何其他表相同的方式使用您将用于此目的的表,字段可能是configKey、configValue、dateCreated?

您的问题对于此站点来说太笼统了。有很多选择,比如将其存储在配置中、Sql表、无Sql表、磁盘上的自定义文件等等。我的问题分为两个问题,第一个问题确实很一般,另一方面,第二个问题有缺点。我同意你的观点,我知道在db环境中,由于重新部署问题等原因,它要简单得多。。但我想知道EF是否是这样做的正确方法?我个人想不出任何特殊的原因来解释为什么不使用实体框架,EF只是一种访问数据的方法。。。。EF主要是我在ASP.NET MVC应用程序中用于数据访问的工具,也是我最习惯使用的工具,因此我在这方面可能有点偏颇。entity framework将以与任何其他表相同的方式使用此表,字段可能为configKey、configValue、dateCreated?实际上,字段将是这3个字段。。我在PLSQL中使用这种编程方式,但我没有对参数表使用EF。是的,实际上它只是一个简单的表,您可以在ASP.NET MVC和Entity Framework中使用它,就像使用任何其他表一样。。也许更简单一点,因为你只有3个非常简单的字段:让我知道你是否尝试过,你是否有任何问题如果可能的话,也许你应该将你的评论中的输入添加到你的答案中,以防其他用户有同样的问题,对我来说,你已经回答了我的主要问题:谢谢!