首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >链接到.NET实体框架的内存中的SQLite

链接到.NET实体框架的内存中的SQLite
EN

Stack Overflow用户
提问于 2013-11-23 03:12:03
回答 1查看 1.4K关注 0票数 0

我有一个现有的(加密的) SQLite DB,我想动态解密并将其加载到内存中。有人知道如何告诉c# .NET实体框架使用我的“内存中”-DB吗?!

也许有一个选项@ App.Config?!我不想让我的数据库在硬盘上被解密。

致敬,DoubleVoid

编辑:我想把整个SQLite DB加载到内存中(例如:一个变量,字节流...)并告诉EF与此对象/流进行通信。我不想在我的App.Config中有这样的连接字符串:

代码语言:javascript
运行
复制
  <connectionStrings>
  <add name="Chinook_Sqlite_AutoIncrementPKsEntities" connectionString="metadata=res://*/EF.Model1.csdl|res://*/EF.Model1.ssdl|res://*/EF.Model1.msl;provider=System.Data.SQLite;provider connection string=&quot;data source=EF\Chinook_Sqlite_AutoIncrementPKs.sqlite&quot;" providerName="System.Data.EntityClient" /></connectionStrings>
</configuration>
EN

回答 1

Stack Overflow用户

发布于 2013-11-23 03:45:41

Entity Model有一个重载,您可以在Entity Model的初始化中提供连接字符串。

代码语言:javascript
运行
复制
var model = new yourModel(ModelConnStr());

Helper函数:

代码语言:javascript
运行
复制
public static string ModelConnStr()
{
System.Data.SqlClient.SqlConnectionStringBuilder sqlcon = new System.Data.SqlClient.SqlConnectionStringBuilder();
sqlcon.DataSource = "your datasource";
sqlcon.InitialCatalog = "your db";
sqlcon.UserID = "id";
sqlcon.Password = "pswrd";
System.Data.EntityClient.EntityConnectionStringBuilder mdlcon = new System.Data.EntityClient.EntityConnectionStringBuilder();
mdlcon.Metadata = "res://*/BMModel.csdl|res://*/BMModel.ssdl|res://*/BMModel.msl";
mdlcon.Provider = "System.Data.SqlClient";
mdlcon.ProviderConnectionString = sqlcon.ConnectionString;
return mdlcon.ConnectionString;
}

现在,对于sqLite,您可以使用不同但相似的对象。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20152686

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档