我有一个多对多关系,中间有一个连接表。这些表是 Cookoff、Participant 和 CookoffParticipant。我应该提到我不允许 Sequelize 创建或修改我的表,我只是在映射我现有的关系。我需要帮助了解哪些关系选项告诉 sequelize 调用将连接表与主表相关联的外键。
据我了解,Sequelize 假设 CookoffID 和 ParticipantID 是 CookoffParticipant 上的复合主键。在我的情况下,我要求主键是我调用 CookoffParticipantID 的标识列,并在 CookoffParticipant 表中的 CookoffID、ParticipantID 对上创建唯一索引。
当我尝试通过查询 cookoffParticipant 表来获取烹饪和参与者数据时,Sequelize 使用错误的键来完成连接。一定有一些简单的事情我没有做。下面是我的表结构和带有结果的查询。
烹饪桌
var Cookoff = sequelize.define("Cookoff", {
// Table columns
CookoffID: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
Title: {
type: DataTypes.STRING,
allowNull: false
},
EventDate: {
type: DataTypes.DATE,
allowNull: false
}
}, _.extend({},
// Table settings
defaultTableSettings,
{
classMethods: {
associate: function(models) {
Cookoff.belongsToMany(models.Participant, {
through: {
model: models.CookoffParticipant
},
as: "Cookoffs",
foreignKey: …Run Code Online (Sandbox Code Playgroud) 我典型的.NET 4.5X Web应用程序结构至少包含3层:Web项目(.NET Web应用程序),域/业务逻辑项目(类库)和数据访问项目(类库).Web项目引用业务层,业务层引用数据访问层.
我喜欢这种方法,因为我的web项目没有对数据访问项目的引用(它必须首先通过域/业务逻辑层).我的Web项目不应该具有对上下文或存储库类的任何访问权限.
在3层.net 4.5.X应用程序中,我在web.config中声明连接字符串,并将DbContext的名称作为连接字符串的name属性.
在新的Dotnet Core范例中,我看到的每个示例都在Startup.cs中配置了DbContext,如下所示:
public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc();
services.AddEntityFramework()
.AddSqlServer()
.AddDbContext<MyApplicationContext>("myconnectionstring or reference to it");
}
Run Code Online (Sandbox Code Playgroud)
通过为启动提供一个用于dbcontext的具体类,我必须引用数据访问项目,其中定义了dbcontext.我宁愿只引用中间层,并避免引用DAL.
我的问题是:我应该如何安排我的解决方案结构,以便我可以避免从我的Web项目添加引用到我的数据访问项目?
我可以使用appsettings.json属性吗?
我可以用另一种方式添加我的实体配置吗?
点网核心有什么重要的缺点吗?
先感谢您.
我在我的开发和生产环境中为 React 应用程序使用 S3 静态网站托管,并且效果很好。我使用类似dev-myapp-mycompany和这样的存储桶命名方案,prod-myapp-mycompany并且为每个环境都有一个专用的存储桶。
我的团队不断创建需要测试的功能分支,虽然我可以为每个新分支创建一个新的存储桶,但我们必须在几个 sprint 内请求增加存储桶,然后经常修剪它们。
我想要做的是在根feature-myapp-mycompany有一个简单的存储桶,index.html它可以提供指向当前部署到此功能存储桶中的每个应用程序的链接。就像是
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Feature Bucket</title>
</head>
<body>
<h1>Feature Branches</h1>
<ul>
<li>
<a href="./feature1/index.html">Feature 1</a>
</li>
<li>
<a href="./feature2/index.html">Feature 2</a>
</li>
...
<li>
<a href="./featuren/index.html">Feature n</a>
</li>
</ul>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
为此,桶结构看起来像
index.html
/feature1
index.html
/static
/feature2
index.html
/static
/featuren
index.html
/static
Run Code Online (Sandbox Code Playgroud)
我通过 AWS cli 部署了所有应用程序,因此编写脚本并不困难。我使用类似的东西
npm run buildaws s3 sync ./build s3://%bucket%/%feature% --delete --profile=%profile% --region=us-east-1将代码放入桶中是没有问题的。这是我卡住的地方:
我的问题: 我已经按照上述方式部署了代码,但是 create-react-app …
.net ×1
amazon-s3 ×1
asp.net ×1
c# ×1
deployment ×1
node.js ×1
reactjs ×1
redirect ×1
sequelize.js ×1
sql ×1