分配给C#中的列表
问题描述:
我试图给C#中的列表赋值。我有以下类:分配给C#中的列表
public class Request
{
public string firstName { get; set; }
public string lastName { get; set; }
public string email { get; set; }
public List<Service> services { get; set; }
}
public class Service
{
public string sku { get; set; }
public string did { get; set;}
}
我用下面的代码在我的控制器:
public async Task<IHttpActionResult> GetCases()
{
var client = await
SalesforceService.GetUserNamePasswordForceClientAsync();
//Select All Cases Where Status = New.
var cases = await client.QueryAsync<Case>("SELECT Id,
Description FROM Case Where Status='New'");
var sfCases = cases.Records.Select(c => new
{
c.Description
});
List<Request> requestresults = new List<Request>();
foreach (var c in sfCases)
{
var sfrequest = new Request();
if (c.Description != null)
{
string[] descriptionline = null;
sfrequest.Description = c.Description;
descriptionline = Regex.Split(c.Description, "\r\n");
if (descriptionline.Any(x => x.Contains("FirstName")))
{
var firstnameindex = Array.FindIndex(descriptionline, row => row.Contains("FirstName"));
sfrequest.firstName = descriptionline[firstnameindex].Replace("FirstName - ", "");
var lastnameindex = Array.FindIndex(descriptionline, row => row.Contains("LastName"));
sfrequest.lastName = descriptionline[lastnameindex].Replace("LastName - ", "");
var emailindex = Array.FindIndex(descriptionline, row => row.Contains("Email"));
sfrequest.email = descriptionline[emailindex].Replace("Email - ", "");
var skuindex = Array.FindIndex(descriptionline, row => row.Contains("sku"));
如何抢sku
和did
并为它们分配的方式,我做了其他性质相同?
答
由于您的要求类包含一个名为services
列表,你可以简单地访问服务的价值,如:
services.sku
services.did
在你的源代码,我认为你会使用它,如:
var skuindex = Array.FindIndex(descriptionline, row => row.Contains("sku"));
sfrequest.services.sku = descriptionline[skuindex].Replace("Sku - ", "");
var didindex = Array.FindIndex(descriptionline, row => row.Contains("did"));
sfrequest.services.did = descriptionline[didindex].Replace("Did - ", "");
此外,我要指出两点:
- 确保services
- 变量在您尝试访问它的位置进行初始化,否则会遇到异常。
- 建议使用大写字母来表示属性名称的第一个字母。您使用的符号通常用于字段。
什么和你的问题到底在哪里?在代码中突出显示它.. – Coding
欢迎来到Stack Overflow!当提出问题时,请尝试制作[最小完整且可验证](https://stackoverflow.com/help/mcve)您问题的示例。现在你有很多代码可能与这个问题没有多大关系。正如@Coding所述,目前还不清楚问题的症结所在。这并不容易,但它是使用软件的一部分。 –