gpt4 book ai didi

sql-server - 无法从 diff Web 角色中的本地数据库获取数据

转载 作者:行者123 更新时间:2023-12-03 04:36:23 24 4
gpt4 key购买 nike

我创建了一个非常简单的具有两个 Web 角色的 MVC5 项目。 webRole1 与本地数据库首先由代码创建(并通过脚手架生成 View ),工作正常,我能够运行它获取 View 数据并在本地数据库中创建数据。

现在我在 WebRole1 中创建了非常简单的 API 来从正在运行的数据库读取数据,并通过 API 获取数据

我创建了 WebRole2,问题是我无法从 webRole2 中的 API(位于 web role1 中)读取数据,我该怎么做?我提供的存在 key 为 null在数据库中

如果可以的话,我可以在一个驱动器中共享该项目。

这是WebRole1的模型

namespace WebRole1.Models
{
public class User
{
[Key]
[Required]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public string UserId { get; set; }

public string FirstName { get; set; }
}

public class ConfigModelDbContext : DbContext
{
public ConfigModelDbContext()
: base("DefaultConnection")
{
}

public DbSet<User> User { get; set; }
}
}

这是连接字符串

  <connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\User.mdf;Initial Catalog=Users;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>

这是一个简单的API,它从本地数据库读取数据(如果我从webRole1调用此API找到的数据

namespace WebRole1.Models
{
public class UserApi
{
private ConfigModelDbContext db = new ConfigModelDbContext();

public User getDbData()
{
User user = db.User.Find("user1");
return user;
}
}
}

最佳答案

已回复 here作者:拉斯里格斯:

Configure the second WebRole to point at the .mdf in the first WebRole (MVC project), e.g.

<connectionStrings>
<add name="Connection1" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=C:\Path\To\The\Database\Person.mdf;Initial Catalog=Persons;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>

replace "C:\Path\To\The\Database\Person.mdf" with the actual full path to the database file that is in WebRole1's App_Data directory.

唯一的问题是这是绝对路径,因此所有开发人员都需要将其存储库放在同一位置。不理想,但我无法获得相对的工作路径。我尝试过:

..\..\..\..\..\..\[project-with-db]\App_Data\[db-name].mdf

假设第二个 Web 角色的基本目录是:

[src-root]\[azure-project]\csx\Debug\roles\[web-role-project-2]\approot

关于sql-server - 无法从 diff Web 角色中的本地数据库获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23285571/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com