@@ -105,9 +105,65 @@ public void Array()
105105 var sql111111 = select . Where ( a => inarray . Contains ( a . testFieldInt ) ) . ToList ( ) ;
106106 var sql112222 = select . Where ( a => inarray . Contains ( a . testFieldInt ) == false ) . ToList ( ) ;
107107 var sql113333 = select . Where ( a => ! inarray . Contains ( a . testFieldInt ) ) . ToList ( ) ;
108+
109+ //nvarchar
110+ IEnumerable < string > stringlinqlist = new List < string > ( new [ ] { "a1" , "a2" , "a3" } ) ;
111+ var ntestlinq = select . Where ( a => stringlinqlist . Contains ( a . testFieldString ) ) . ToList ( ) ;
112+
113+ //in not in
114+ var nsql111 = select . Where ( a => new [ ] { "a1" , "a2" , "a3" } . Contains ( a . testFieldString ) ) . ToList ( ) ;
115+ var nsql112 = select . Where ( a => new [ ] { "a1" , "a2" , "a3" } . Contains ( a . testFieldString ) == false ) . ToList ( ) ;
116+ var nsql113 = select . Where ( a => ! new [ ] { "a1" , "a2" , "a3" } . Contains ( a . testFieldString ) ) . ToList ( ) ;
117+
118+ var ninarray = new [ ] { "a1" , "a2" , "a3" } ;
119+ var nsql1111 = select . Where ( a => ninarray . Contains ( a . testFieldString ) ) . ToList ( ) ;
120+ var nsql1122 = select . Where ( a => ninarray . Contains ( a . testFieldString ) == false ) . ToList ( ) ;
121+ var nsql1133 = select . Where ( a => ! ninarray . Contains ( a . testFieldString ) ) . ToList ( ) ;
122+
123+ //in not in
124+ var nsql11111 = select . Where ( a => new List < string > ( ) { "a1" , "a2" , "a3" } . Contains ( a . testFieldString ) ) . ToList ( ) ;
125+ var nsql11222 = select . Where ( a => new List < string > ( ) { "a1" , "a2" , "a3" } . Contains ( a . testFieldString ) == false ) . ToList ( ) ;
126+ var nsql11333 = select . Where ( a => ! new List < string > ( ) { "a1" , "a2" , "a3" } . Contains ( a . testFieldString ) ) . ToList ( ) ;
127+
128+ var nsql11111a = select . Where ( a => new List < string > ( new [ ] { "a1" , "a2" , "a3" } ) . Contains ( a . testFieldString ) ) . ToList ( ) ;
129+ var nsql11222b = select . Where ( a => new List < string > ( new [ ] { "a1" , "a2" , "a3" } ) . Contains ( a . testFieldString ) == false ) . ToList ( ) ;
130+ var nsql11333c = select . Where ( a => ! new List < string > ( new [ ] { "a1" , "a2" , "a3" } ) . Contains ( a . testFieldString ) ) . ToList ( ) ;
131+
132+ var ninarray2 = new List < string > ( ) { "a1" , "a2" , "a3" } ;
133+ var nsql111111 = select . Where ( a => ninarray2 . Contains ( a . testFieldString ) ) . ToList ( ) ;
134+ var nsql112222 = select . Where ( a => ninarray2 . Contains ( a . testFieldString ) == false ) . ToList ( ) ;
135+ var nsql113333 = select . Where ( a => ! ninarray2 . Contains ( a . testFieldString ) ) . ToList ( ) ;
136+
137+ //varchar
138+ IEnumerable < string > vstringlinqlist = new List < string > ( new [ ] { "a1" , "a2" , "a3" } ) ;
139+ var vtestlinq = select . Where ( a => vstringlinqlist . Contains ( a . testFieldStringVarchar ) ) . ToList ( ) ;
140+
141+ //in not in
142+ var vsql111 = select . Where ( a => new [ ] { "a1" , "a2" , "a3" } . Contains ( a . testFieldStringVarchar ) ) . ToList ( ) ;
143+ var vsql112 = select . Where ( a => new [ ] { "a1" , "a2" , "a3" } . Contains ( a . testFieldStringVarchar ) == false ) . ToList ( ) ;
144+ var vsql113 = select . Where ( a => ! new [ ] { "a1" , "a2" , "a3" } . Contains ( a . testFieldStringVarchar ) ) . ToList ( ) ;
145+
146+ var vinarray = new [ ] { "a1" , "a2" , "a3" } ;
147+ var vsql1111 = select . Where ( a => ninarray . Contains ( a . testFieldStringVarchar ) ) . ToList ( ) ;
148+ var vsql1122 = select . Where ( a => ninarray . Contains ( a . testFieldStringVarchar ) == false ) . ToList ( ) ;
149+ var vsql1133 = select . Where ( a => ! ninarray . Contains ( a . testFieldStringVarchar ) ) . ToList ( ) ;
150+
151+ //in not in
152+ var vsql11111 = select . Where ( a => new List < string > ( ) { "a1" , "a2" , "a3" } . Contains ( a . testFieldStringVarchar ) ) . ToList ( ) ;
153+ var vsql11222 = select . Where ( a => new List < string > ( ) { "a1" , "a2" , "a3" } . Contains ( a . testFieldStringVarchar ) == false ) . ToList ( ) ;
154+ var vsql11333 = select . Where ( a => ! new List < string > ( ) { "a1" , "a2" , "a3" } . Contains ( a . testFieldStringVarchar ) ) . ToList ( ) ;
155+
156+ var vsql11111a = select . Where ( a => new List < string > ( new [ ] { "a1" , "a2" , "a3" } ) . Contains ( a . testFieldStringVarchar ) ) . ToList ( ) ;
157+ var vsql11222b = select . Where ( a => new List < string > ( new [ ] { "a1" , "a2" , "a3" } ) . Contains ( a . testFieldStringVarchar ) == false ) . ToList ( ) ;
158+ var vsql11333c = select . Where ( a => ! new List < string > ( new [ ] { "a1" , "a2" , "a3" } ) . Contains ( a . testFieldStringVarchar ) ) . ToList ( ) ;
159+
160+ var vinarray2 = new List < string > ( ) { "a1" , "a2" , "a3" } ;
161+ var vsql111111 = select . Where ( a => ninarray2 . Contains ( a . testFieldStringVarchar ) ) . ToList ( ) ;
162+ var vsql112222 = select . Where ( a => ninarray2 . Contains ( a . testFieldStringVarchar ) == false ) . ToList ( ) ;
163+ var vsql113333 = select . Where ( a => ! ninarray2 . Contains ( a . testFieldStringVarchar ) ) . ToList ( ) ;
108164 }
109165
110- [ Table ( Name = "tb_alltype " ) ]
166+ [ Table ( Name = "tb_alltypeOther " ) ]
111167 class TableAllType
112168 {
113169 [ Column ( IsIdentity = true , IsPrimary = true ) ]
@@ -131,6 +187,9 @@ class TableAllType
131187 public DateTimeOffset testFieldDateTimeOffset { get ; set ; }
132188 public byte [ ] testFieldBytes { get ; set ; }
133189 public string testFieldString { get ; set ; }
190+
191+ [ Column ( DbType = "varchar(255)" ) ]
192+ public string testFieldStringVarchar { get ; set ; }
134193 public Guid testFieldGuid { get ; set ; }
135194
136195 public bool ? testFieldBoolNullable { get ; set ; }
0 commit comments