(这个问题遵循an excellent post on using Npgsql)。
我有一个PostgreSQL(9.5.0)数据库,有两个模式:public和nova。然后我使用了NuGet控制台:
Install-Package EntityFramework6.Npgsql -Version 3.0.5
现在我将以下元素添加到app.config
文件中:
<system.data>
<DbProviderFactories>
<remove invariant="Npgsql"/>
<add name="Npgsql Data Provider"
invariant="Npgsql"
description=".Net Data Provider for PostgreSQL"
type="Npgsql.NpgsqlFactory, Npgsql, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7"
support="FF" />
</DbProviderFactories>
</system.data>
然后我在我的项目中添加了一个新的“ADO.NET实体数据模型”。
填写了以下连接属性:
Database: chaos
Host: localhost
Password: psw
Port: 5432
Search Path: nova
Username: postgres
然后测试连接,一切正常。
然后首先使用数据库构建实体框架。 .edmx
文件构建正确,VS设计师很高兴。
问题是.edmx
文件是从数据库中的所有表构建的。也就是说,public和nova架构的表都在.edmx
文件中。
除了在连接属性中指定搜索路径之外,我在数据库上尝试了以下内容 - 但这些不会更改添加到.edmx
文件的两个模式:
有没有办法只使用一个架构Nova
构建实体框架?
我的组件:
TIA
答案 0 :(得分:0)
您可以使用程序包管理器控制台运行Database First脚手架
使用import requests
from requests_toolbelt.multipart.encoder import MultipartEncoder
multipart_data = MultipartEncoder(
fields={
"uploadId": "0:2d7765623034:557915d737b48:000456",
"mtype": "1000",
"extensions": "png,gif",
"minPixSize": "1000",
"maxBytesSize": "1000",
"masterSize": "",
"masterWidth": "",
"masterHeight": "",
"imageFile1": (
"filename.jpg",
open("filename.jpg"], 'rb'),
"image/jpeg"
)
}
)
requests.post(
url="http://myserver.com/upload",
headers={
"Content-Type": multipart_data.content_type,
},
data=multipart_data,
)
参数仅针对特定模式运行它:
-Schemas
Scaffold-DbContext "host=server;database=chaos;user id=postgres;" Devart.Data.PostgreSql.Entity.EFCore -Schemas nova
命令还接受表的参数:Scaffold-DbContext
。
从here回答。
另见this教程。