Мне было поручено исправить некоторые проблемы в приложении C#, которое кто-то сделал (кто-то покинул компанию), и я не являюсь на самом деле квалифицированным программистом на C# Я немного застрял в следующем.C# change linq list (int) item to (string)
var JobQuery = (from datavalue in dc.JobInformations
where datavalue.JobOpen != 20
select new
{
datavalue.JobID,
datavalue.CompanyName,
datavalue.Contact,
datavalue.Date,
datavalue.HireOrSale,
datavalue.JobOpen,
datavalue.Notes
}
);
var JobList = JobQuery.ToList();
Во всяком случае мне нужно взять список и цикл через него, который я могу сделать, используя что-то вроде этого:
foreach (var item in JobList){
if (item.HireOrSale = 1) {
item.HireOrSale = "Sale";
}
yield return item;
}
Как вы можете видеть, что я пытаюсь сделать, это изменить аренду или продажу который хранится как INT для строки для лучшего чтения на переднем конце, я не могу преобразовать строку в int, где я застреваю. Есть ли способ, который я могу сказать, построить другой список в цикле, чтобы я мог определить тип данных для каждого в случае его разного? или есть способ напрямую изменить тип данных элементов?
Б:
var JobList = (from datavalue in dc.JobInformations
where datavalue.JobOpen == 1
select new
{
JobID = datavalue.JobID,
CompanyName = datavalue.CompanyName,
Contact = datavalue.Contact,
Date = datavalue.Date.ToShortDateString(),
HireOrSale = datavalue.HireOrSale == 2 ? "Service" :
datavalue.HireOrSale == 0 ? "Hire" :
datavalue.HireOrSale == 1 ? "Sale" : "",
JobOpen = datavalue.JobOpen == 1 ? "Awaiting Quote" :
datavalue.JobOpen == 2 ? "Quoted" :
datavalue.JobOpen == 3 ? "PO Recieved" :
datavalue.JobOpen == 4 ? "Goods On Order" :
datavalue.JobOpen == 5 ? "Goods Delivered" :
datavalue.JobOpen == 6 ? "Job Complete" :
datavalue.JobOpen == 20 ? "Job Cancelled" : "",
Notes = datavalue.Notes
}
);
Если у вас есть небольшой и конечное число значений для 'HireOrSale', я бы создать' enum' для него и использовать целое значение перечисления, чтобы получить имя перечисления (то есть, вызов 'ToString() 'на значение enum * *). – Tim