惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
The Blog of Author Tim Ferriss
S
Securelist
D
Docker
The Register - Security
The Register - Security
GbyAI
GbyAI
Recorded Future
Recorded Future
Engineering at Meta
Engineering at Meta
Stack Overflow Blog
Stack Overflow Blog
云风的 BLOG
云风的 BLOG
P
Proofpoint News Feed
罗磊的独立博客
博客园 - 【当耐特】
F
Full Disclosure
WordPress大学
WordPress大学
腾讯CDC
小众软件
小众软件
大猫的无限游戏
大猫的无限游戏
D
DataBreaches.Net
SecWiki News
SecWiki News
L
Lohrmann on Cybersecurity
I
InfoQ
MyScale Blog
MyScale Blog
量子位
Cyberwarzone
Cyberwarzone
博客园 - 三生石上(FineUI控件)
The Hacker News
The Hacker News
F
Fortinet All Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Jina AI
Jina AI
博客园_首页
H
Help Net Security
K
Kaspersky official blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Webroot Blog
Webroot Blog
Blog — PlanetScale
Blog — PlanetScale
V
Vulnerabilities – Threatpost
Y
Y Combinator Blog
The Cloudflare Blog
P
Proofpoint News Feed
V
Visual Studio Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Tailwind CSS Blog
爱范儿
爱范儿
P
Privacy International News Feed
Security Archives - TechRepublic
Security Archives - TechRepublic
The GitHub Blog
The GitHub Blog
C
Cybersecurity and Infrastructure Security Agency CISA
B
Blog RSS Feed

博客园 - Inrie

[原创]MongoDB、HandlerSocket和MySQL性能测试及其结果分析 [原创]HandlerSocket系列(三):性能及其性能优化 [原创]HandlerSocket系列(二):架构、特点及其应用场景 [原创]HandlerSocket系列(一):由来 SD2.0 2009大会一些感想 在Windows Server 2008集群上做Sql Server 2008集群 解决Azure Project中使用Asp.net MVC RC会让VS崩溃的补丁 [译]剖析ASP.Net MVC Application 让VS 2008也可以用Mobile Web Form 几个不错的WCF Tools 善待你的眼睛-使用微软专为程序员设计的Consolas字体 [推荐]ASP.NET 应用程序的扩展策略 [翻译+推荐]你需要知道的:WCF、WF、ADO.NET SyncServices和ClickOnce 如何发布Ado.net Entity Framework EDM Unity Application Block 1.0系列文章 Unity Application Block 1.0系列(7): Lifetime Managers Unity Application Block 1.0系列(6): 杜绝循环引用 Unity Application Block 1.0系列(5): 使用BuildUp让已存在对象实例也支持依赖注入 Unity Application Block 1.0系列(4): 方法调用注入(Method Call Injection )
ADO.NET Entity Framework Beta3的一些问题
Inrie · 2008-04-29 · via 博客园 - Inrie

在ADO.NET Entity Framework Beta3中,New一个"ADO.NET Entity Data Model"。打开生成的SSDL文件,随便看一个EntitySet节点:

<EntitySet Name="Tenant" EntityType="SAASModel.Store.Tenant">
    
<DefiningQuery>
              SELECT 
             [Tenant].[TenantId] AS [TenantId], 
             [Tenant].[TenantName] AS [TenantName], 
             [Tenant].[DisplayName] AS [DisplayName], 
             [Tenant].[Approved] AS [Approved], 
             [Tenant].[CreateDate] AS [CreateDate], 
             [Tenant].[EndDate] AS [EndDate], 
             .......
          FROM
               [dbo].[Tenant] AS [Tenant]
   
</DefiningQuery>
</EntitySet>

看看上面突出显示的"[dbo].[Tenant] AS [Tenant]",注意这里多出了"[dbo]"前缀。

再来看看创建上面的EDM后会在config里生成的节点:

<connectionStrings>
    <add name="UserRightEntities" connectionString="metadata=res://*/UserRight.csdl|res://*/UserRight.ssdl|res://*/UserRight.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=xxxxserver;Initial Catalog=xxxx;Persist Security Info=True;User ID=sa;Password=xxxxxx;MultipleActiveResultSets=False&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>

OK, 现在我在数据库中创建了一个用户:Inrie, 然后以这个用户的身份创建一个Tenant表。这时候数据库中就有两个Tenant表:[dbo].[Tenant]和[inrie].[Tenant]。

通常情况下,我们都认为:通过设置连接字符串的User ID的值,访问EDM获取到的数据应该就是当前用户下表的数据。也就是我设置User Id=inrie, 我就希望我得到的是[inrie].[Tenant]表的数据。

但是看看最上面生成的EntitySet信息,发现它已经自作主张的给你加了[dbo]前缀了,这样导致你无论设置的User ID是什么值,获取到的都是[dbo].[Tenant]的数据。

对此,我在想是否可以在创建 "ADO.NET Entity Data Model" 时做一些设置,使得不生成这个[dbo],但是查看了所有属性,没有很好对策。当然要想实现需求也不是没有办法,可以手动的把"[dbo]"前缀去掉,但是这毕竟不是根本上的解决方法。

希望在正式版中有所改进。

作者:Inrie (洪晓军)
出处:http://www.cnblogs.com/inrie