在用ef4.1過程中發現了乙個非常詭異的guid為空問題,不說廢話,直接看問題吧:
測試表userinfo(sql server 2008 r2):
這裡是建表sql語句,供有興趣朋友測試:
table
[dbo].
[userinfo](
[id][
int]
identity(1
,1) not
null,[
userid][
uniqueidentifier
]not
null,[
username][
nvarchar](
50)
null,[
email][
varchar](
50)
notnull,[
picid][
uniqueidentifier
]null
,primary
key([id
]))go
userinfo實體類:
using
system;
using
system.collections.generic;
using
system.linq;
using
system.text;
using
system.runtime.serialization;
using
system.data.entity;
using
system.componentmodel.dataannotations;
namespace
consoletest
[datamember]
public
guid userid
[datamember]
public
string
username
[datamember]
public
string
[datamember]
public
guid picid }}
ef配置**:
using
system;
using
system.collections.generic;
using
system.linq;
using
system.text;
using
system.data.entity;
using
system.configuration;
namespace
consoletest
public
dbset
<
userinfo
>
userinfos
}using
system;
using
system.collections.generic;
using
system.linq;
using
system.text;
using
system.data.sqlclient;
namespace
consoletest
}public
list
<
userinfo
>
getuserinfonew()}}
using
system;
using
system.collections.generic;
using
system.linq;
using
system.text;
using
system.text.regularexpressions;
namespace
consoletest
}select
[extent1].
[id]as
[id],
[extent1].
[userid]as
[userid],
[extent1].
[username]as
[username],
[extent1].
[email]as
[email],
[extent1].
[picid]as
[picid
]from
[dbo].
[userinfo]as
[extent1
]where([
extent1].
[username]is
notnull
) and([
extent1].
[email]is
notnull
)第二個方法sql語句:
exec
sp_executesql n
'select
''00000000-0000-0000-0000-000000000000
''as uniqueidentifier) <> [extent1].[picid])',n
'@p__linq__0 uniqueidentifier',
@p__linq__0='
00000000-0000-0000-0000-000000000000
'詭異在第乙個方法生成的sql語句中型別為guid的兩個欄位的不為空的條件沒有了,第二個方法是本人針對第一種方法不足提供的一種解決方案,不知大家有什麼看法,怎麼解決這一問題的,請不吝賜教!
EF4 1之基礎(實現Code First)
code first 顧名思義 就是通過 生成資料庫 通過類生成資料庫中對應的表 首先定義兩個類 就是建模的過程 1 public class order24 5public string ordercode 67 public string custormname 89 public icolle...
基於EF4 1的異構資料庫訪問元件(三)
基於ef4.1的異構資料庫訪問元件 二 中已完成了該元件的核心部分 接下來,向大家介紹一下第一篇所說的,給上層提供統一的持久資料介面。irepository就是需要提供給上層的統一資料持久介面,這裡大家可以找到很多的例子,不多說,直接上類圖 上圖中有以下幾個主要部分 關於iunitofwork與ir...
EF4 1 企業架構模式 自動對映資料表
在講解之前,先來看看解決方案的架構 1 在nop.core下的domain裡建立乙個實體category using system.data.entity.modelconfiguration using nop.core.domain.catalog 3 在nop.data下建ef上下文介面idb...