Return 对于 class C# 中数据 table 中的每个值
Return for each value in data table in class C#
我已经class使用以下网络服务获取序列号:
class SeriNumber
{
private string serialNumber;
public SeriNumber(string serial,string Customer)
{
this.serialNumber = serial;
if (Customer.Equals("ABC"))
{
Service.SoapClient b = new Service.SoapClient();
string resultz = b.GetPanelSerializeResult(Customer,serial).Trim();
var xml = resultz;
using (var textReader = new StringReader(xml))
{
var ds = new DataSet();
ds.ReadXml(textReader);
DataTable data = new DataTable();
data = ds.Tables[0];
foreach (DataRow row in data.Rows)
{
serial = row[3].ToString();
serialNumber = serial;
}
}
}
}
public string GetSeriNumber()
{
return serialNumber;
}
}
表单中的代码
SeriNumber seriNumber = new SeriNumber("1162200033501","ABC");
string serial = seriNumber.GetSeriNumber();
我知道通用连载有 24 个子连载:
| Serinumber |
| -------------- |
| 21162200033501 |
| 21162200033502 |
| 21162200033503 |
| -------------- |
| 21162200033523 |
| 21162200033524 |
我知道通用系列有 24 个子系列,我想得到它。在循环结果中得到 24 个连续剧但 return 我只得到最后一个连续剧。请帮我更正一下:每个子连载都会return 1次。所以 return 总计 24 次。
您可能需要将 sub-serials 添加到列表或数组中,而不是仅仅重复覆盖序列字段。例如:
private List<string> subSerials = new ();
...
subSerials.Add(row[3].ToString());
...
public IReadOnlyList<string> SubSerials => subSerials;
但是,我会担心将不同的问题混合到一个 class 中。在构造函数中调用 soap 服务等复杂工作可能不是最好的主意。因此,我可能建议拆分从代表序列号的 class 中获取序列号的组件。
我已经class使用以下网络服务获取序列号:
class SeriNumber
{
private string serialNumber;
public SeriNumber(string serial,string Customer)
{
this.serialNumber = serial;
if (Customer.Equals("ABC"))
{
Service.SoapClient b = new Service.SoapClient();
string resultz = b.GetPanelSerializeResult(Customer,serial).Trim();
var xml = resultz;
using (var textReader = new StringReader(xml))
{
var ds = new DataSet();
ds.ReadXml(textReader);
DataTable data = new DataTable();
data = ds.Tables[0];
foreach (DataRow row in data.Rows)
{
serial = row[3].ToString();
serialNumber = serial;
}
}
}
}
public string GetSeriNumber()
{
return serialNumber;
}
}
表单中的代码
SeriNumber seriNumber = new SeriNumber("1162200033501","ABC");
string serial = seriNumber.GetSeriNumber();
我知道通用连载有 24 个子连载:
| Serinumber |
| -------------- |
| 21162200033501 |
| 21162200033502 |
| 21162200033503 |
| -------------- |
| 21162200033523 |
| 21162200033524 |
我知道通用系列有 24 个子系列,我想得到它。在循环结果中得到 24 个连续剧但 return 我只得到最后一个连续剧。请帮我更正一下:每个子连载都会return 1次。所以 return 总计 24 次。
您可能需要将 sub-serials 添加到列表或数组中,而不是仅仅重复覆盖序列字段。例如:
private List<string> subSerials = new ();
...
subSerials.Add(row[3].ToString());
...
public IReadOnlyList<string> SubSerials => subSerials;
但是,我会担心将不同的问题混合到一个 class 中。在构造函数中调用 soap 服务等复杂工作可能不是最好的主意。因此,我可能建议拆分从代表序列号的 class 中获取序列号的组件。