Qu'est-ce que in
et not in
équivaut à LINQ to SQL?LINQ vers SQL dans et non dans
Par exemple
select * from table in (...)
and
select * from table not in (..)
Quelle est égale à la déclaration ci-dessus dans LINQ to SQL?
Qu'est-ce que in
et not in
équivaut à LINQ to SQL?LINQ vers SQL dans et non dans
Par exemple
select * from table in (...)
and
select * from table not in (..)
Quelle est égale à la déclaration ci-dessus dans LINQ to SQL?
Vous utilisez, where <list>.Contains(<item>)
var myProducts = from p in db.Products
where productList.Contains(p.ProductID)
select p;
Ou vous pouvez avoir une liste prédéfinie en tant que tel: '!
var ids = {1, 2, 3};
var query = from item in context.items
where ids.Contains(item.id)
select item;
Pour le 'NON' cas, il suffit d'ajouter la opérateur avant l'instruction "Contient".
Je suis confus par votre question. in
et not in
fonctionnent sur les champs de la requête, mais vous ne spécifiez pas de champ dans votre exemple de requête. Il doit donc être quelque chose comme:
select * from table where fieldname in ('val1', 'val2')
ou
select * from table where fieldname not in (1, 2)
L'équivalent de ces serait quelque chose comme requêtes dans LINQ to SQL ceci:
List<string> validValues = new List<string>() { "val1", "val2"};
var qry = from item in dataContext.TableName
where validValues.Contains(item.FieldName)
select item;
et ceci:
List<int> validValues = new List<int>() { 1, 2};
var qry = from item in dataContext.TableName
where !validValues.Contains(item.FieldName)
select item;
S'il vous plaît Essayez ceci pour SQL ne sont pas en
var v = from cs in context.Sal_Customer
join sag in context.Sal_SalesAgreement
on cs.CustomerCode equals sag.CustomerCode
where
!(
from cus in context.Sal_Customer
join
cfc in context.Sal_CollectionFromCustomers
on cus.CustomerCode equals cfc.CustomerCode
where cus.UnitCode == locationCode &&
cus.Status == Helper.Active &&
cfc.CollectionType == Helper.CollectionTypeDRF
select cus.CustomerCode
).Contains(cs.CustomerCode) &&
cs.UnitCode == locationCode &&
cs.Status == customerStatus &&
SqlFunctions.DateDiff("Month", sag.AgreementDate, drfaDate) < 36
select new CustomerDisasterRecoveryDetails
{
CustomerCode = cs.CustomerCode,
CustomerName = cs.CustomerName,
AgreementDate = sag.AgreementDate,
AgreementDuration = SqlFunctions.DateDiff("Month", sag.AgreementDate, drfaDate)
};
S'il vous plaît Essayez ceci pour SQL
context.Sal_PackageOrItemCapacity.Where(c => c.ProjectCode == projectCode && c.Status == Helper.Active && c.CapacityFor.Contains(isForItemOrPackage)).ToList();
Comment gérez-vous si elle est dans une liste? IN ('a', 'b', 'c') – DOK
@DOK il vient de mentionner comment vous gérez si c'est dans une liste. – Randolpho
Voir mon exemple mis à jour. –