Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#从URL中检索值并插入记录_C#_Loops_Foreach_Sage - Fatal编程技术网

C#从URL中检索值并插入记录

C#从URL中检索值并插入记录,c#,loops,foreach,sage,C#,Loops,Foreach,Sage,在我的代码中,我通过url收到了一个以逗号分隔的id列表,例如 12,13,14,15,16 etc.. 我把这些东西编成了一根绳子(工具),我把它劈开了 我现在需要遍历每个值,并在insert语句中使用它,但我遇到了难题,任何人都可以帮助我 下面的C#基于SDK,因此它使用了一些您可能没有看到的功能 string userc = GetContextInfo("User", "UserId"); string tools = Dispatch.EitherField("selectedToo

在我的代码中,我通过url收到了一个以逗号分隔的id列表,例如

12,13,14,15,16 etc..
我把这些东西编成了一根绳子(工具),我把它劈开了

我现在需要遍历每个值,并在insert语句中使用它,但我遇到了难题,任何人都可以帮助我

下面的C#基于SDK,因此它使用了一些您可能没有看到的功能

string userc = GetContextInfo("User", "UserId");
string tools = Dispatch.EitherField("selectedTools");
tools.Split(',');

string pID = Dispatch.EitherField("key16");

Record recRelTool = new Record("RelatedTools");
recRelTool.SetField("rato_CreatedBy", userc);
recRelTool.SetField("rato_Status", "active");
recRelTool.SetField("rato_server", pID);
recRelTool.SetField("rato_tool", tools);
recRelTool.SaveChanges();
Dispatch.Redirect(Url("1453"));
其中,
(“rato_tools”,tools)
需要是我拥有的值中的一个工具id。我需要循环,直到所有工具id都被使用。

对的调用不会分割字符串,而是返回一个字符串数组。您需要通过该数组进行枚举,以便一次使用一个工具id。请尝试以下操作:

string userc = GetContextInfo("User", "UserId");
string tools = Dispatch.EitherField("selectedTools");
string[] toolIds = tools.Split(',');
foreach (string toolId in toolIds) 
{
  Record recRelTool = new Record("RelatedTools");
  recRelTool.SetField("rato_CreatedBy", userc);
  recRelTool.SetField("rato_Status", "active");
  recRelTool.SetField("rato_server", pID);
  recRelTool.SetField("rato_tool", toolId);
  recRelTool.SaveChanges();
}

Dispatch.Redirect(Url("1453"));
对的调用不会分割字符串,而是返回字符串数组。您需要通过该数组进行枚举,以便一次使用一个工具id。请尝试以下操作:

string userc = GetContextInfo("User", "UserId");
string tools = Dispatch.EitherField("selectedTools");
string[] toolIds = tools.Split(',');
foreach (string toolId in toolIds) 
{
  Record recRelTool = new Record("RelatedTools");
  recRelTool.SetField("rato_CreatedBy", userc);
  recRelTool.SetField("rato_Status", "active");
  recRelTool.SetField("rato_server", pID);
  recRelTool.SetField("rato_tool", toolId);
  recRelTool.SaveChanges();
}

Dispatch.Redirect(Url("1453"));

您必须分配拆分返回值:

var splitted = tools.Split(',');

然后可以迭代集合:

foreach(string item in splitted)
{
//do something
}

您必须分配拆分返回值:

var splitted = tools.Split(',');

然后可以迭代集合:

foreach(string item in splitted)
{
//do something
}