过去,我们只使用默认的asp.net配置来自动添加表格和相关代码。然后稍微更新一下以满足我们的需求,例如一些自定义配置文件提供程序。
现在我们正在使用MVC3和Entity Framework 4.此外,我们这次使用MySQL作为数据库,因为EF4可以很好地与所有类型的数据库进行通信。然后我们遇到了一些问题。
asp.net配置将在web.config中创建一个单独的连接字符串条目并使用该条目。我们可以使用现有的EDMX模型吗?
由于我们无法在MySQL数据库中编写存储过程,是否有任何示例代码在不使用存储过程的情况下设计这些成员资格/配置文件提供程序?
谢谢。
[更新 - 回应Mathieu Leblanc]
我目前的项目是使用现有的MySQL数据库,该数据库已包含成员资格,角色和配置文件信息。因此,我们不要使用Aspnet_regsql.exe
在数据库中创建新表。我们如何使用现有的数据库结构来设计这些提供者?
到目前为止,我还没有想过一个好的解决方案。任何建议将不胜感激。
答案 0 :(得分:0)
您确实可以使用单个数据库来保存身份验证表和常规的EF4数据库。
您可以使用命令行工具Aspnet_regsql.exe生成创建所有ASP.Net身份验证表的脚本(详情请参阅:http://msdn.microsoft.com/en-us/library/ms229862.aspx)
您还可以修改web.config以使单个连接字符串指向您的单个数据库,但我建议您保留两行,每行都有其名称(及其用途),并让它们指向相同的数据库中。
它看起来像
<configuration>
<connectionStrings>
<add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS2008;Integrated Security=SSPI;initial catalog=MyDatabase" providerName="System.Data.SqlClient" />
<add name="MyEntities" connectionString="data source=.\SQLEXPRESS2008;Integrated Security=SSPI;initial catalog=MyDatabase" providerName="System.Data.SqlClient" />
</connectionStrings>
...
关于如何使用ASP.Net认证数据库处理MySQL的问题,关于Stored Proc,我不知道它是如何工作的(如果有的话)。