Reputation: 45
I need to make this query into a Variable but I am having a hard time creating it. I get stuck towards the end of the query in c# this is what I have. I am pretty novice and only self taught so it could be way off. But this is what I have so far
var query = (from CON in CONTACT
join ACT in ACCOUNT on ACT.ACCOUNTID equals CON.ACCOUNTID
join TTC in TTCONTRACT on TTC.ACCOUNTID equals ACT.ACCOUNTID
where CON.EMAIL != null && ACT.USERFIELD1 != null &&
int.TryParse(ACT.USERFIELD1) = 1 && CON.EMAIL like %@%
Here is the original SQL query:
Select
con.FIRSTNAME, Con.LASTNAME, Con.EMAIL,
Act.USERFIELD1 'SerialNumber', ACT.ACCOUNT,
TTC.SOFTWAREMAINTENANCE, TTC.HARDWAREMAINTENANCE
from
CONTACT CON
Inner join
ACCOUNT ACT on ACT.ACCOUNTID = CON.ACCOUNTID
Inner join
TTCONTRACTS TTC on TTC.ACCOUNTID = ACT.ACCOUNTID
Where
Con.EMAIL is not null
and Act.USERFIELD1 is not null
and ISNUMERIC(Act.USERFIELD1) = 1
and con.EMAIL like '%@%'
Any help would be appreciated - thank you.
Upvotes: 1
Views: 5989
Reputation: 4191
Try something like this:
var b = "Select con.FIRSTNAME, Con.LASTNAME, Con.EMAIL, Act.USERFIELD1 'SerialNumber', ACT.ACCOUNT, TTC.SOFTWAREMAINTENANCE, TTC.HARDWAREMAINTENANCE "+
"from CONTACT CON Inner join ACCOUNT ACT on ACT.ACCOUNTID = CON.ACCOUNTID " +
"Inner join TTCONTRACTS TTC on TTC.ACCOUNTID = ACT.ACCOUNTID " +
"Where Con.EMAIL is not null and Act.USERFIELD1 is not null and " +
"ISNUMERIC(Act.USERFIELD1) = 1 and con.EMAIL like '%@%'";
Upvotes: 1
Reputation: 233
var query = from CON in CONTACT
join ACT in ACCOUNT on ACT.ACCOUNTID equals CON.ACCOUNTID
join TTC in TTCONTRACT on TTC.ACCOUNTID equals ACT.ACCOUNTID
where CON.EMAIL != null
&& ACT.USERFIELD1 != null
&& System.Data.Objects.SqlClient.SqlFunctions.IsNumeric(ACT.USERFIELD1) != null
&& CON.EMAIL.Containt("@")
Upvotes: 0
Reputation: 114
Regarding to like operator in c# is equivalent to Contains method. And at the end of your query you should specify what columns you need to select
var query = from CON in CONTACT join ACT in ACCOUNT on ACT.ACCOUNTID equals CON.ACCOUNTID join TTC in TTCONTRACT on TTC.ACCOUNTID equals ACT.ACCOUNTID where CON.EMAIL != null && ACT.USERFIELD1 != null && int.TryParse(ACT.USERFIELD1) = 1 && CON.EMAIL.Contains("@")
Select {
FIRSTNAME=con.FIRSTNAME,
LASTNAME=Con.LASTNAME,
EMAIL= Con.EMAIL,
SerialNumber= Act.USERFIELD1 ,
ACCOUNT=ACT.ACCOUNT,
SOFTWAREMAINTENANCE= TTC.SOFTWAREMAINTENANCE,
HARDWAREMAINTENANCE= TTC.HARDWAREMAINTENANCE
}
Upvotes: 0