cost = (now.Year - time.Year) * Convert.ToInt32(dataRow1[3].ToString()) + (now.Month - time.Month) * Convert.ToInt32(dataRow1[4].ToString()) + (now.Day - time.Day) * Convert.ToInt32(dataRow1[2].ToString()) + (now.Hour - time.Hour) * Convert.ToInt32(dataRow1[1].ToString()); MessageBox.Show("停入时间:"+time+"\n停车费用为"+cost+"元");
时间: 2023-05-15 10:06:51 浏览: 145
这是一段 C# 代码,计算停车费用。其中,now 表示当前时间,time 表示停车开始时间,dataRow1 是一个数据表中的一行数据,包含了每小时、每天、每月的停车费用。计算停车费用的公式为:停车时间 x 停车费用。最后,使用 MessageBox 显示停车时间和停车费用。
相关问题
try { DataRow dataRow = SystemRunVar.dtPlcMsg.NewRow(); //dataRow["Msg"] = Msg; dataRow["Msg"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + " --> " + Msg; SystemRunVar.dtPlcMsg.Rows.Add(dataRow); } catch (Exception ex) { //Log("错误:" + ex.Message); }详细讲讲这句什么意思
这段代码是用来往一个 DataTable 对象中添加一行数据的。首先,在代码中定义了一个 DataRow 对象 dataRow,它表示要添加的数据行。然后,通过 dataRow 的属性来设置每个列的值。其中,Msg 列的值是一个字符串,它由当前时间和参数 Msg 拼接而成。接着,将 dataRow 添加到 DataTable 对象 SystemRunVar.dtPlcMsg 中。如果在添加数据行的过程中发生了异常,异常信息会被捕获并记录在日志中,但是当前代码中被注释掉了。
List<DataRow> mismatchedRecords = new List<DataRow>(); // 存储不满足条件的记录 foreach (DataRow row in reDb.Rows) { string lotName = row["LotName"].ToString(); int recordCount = Convert.ToInt32(row["record_count"]); int maxWaferNo = Convert.ToInt32(row["max_waferno"]); maxWaferNo = Js(maxWaferNo); if (IsLot(lotName)) { if (maxWaferNo != recordCount) { mismatchedRecords.Add(row); } } } mismatchedRecords 中增加一列WaferNum
要在 `mismatchedRecords` 中增加一列 `WaferNum`,你需要修改代码以在每次添加 `DataRow` 到 `mismatchedRecords` 之前,向该行添加一个名为 `WaferNum` 的新列。下面是修改后的代码:
```csharp
List<DataRow> mismatchedRecords = new List<DataRow>(); // 存储不满足条件的记录
foreach (DataRow row in reDb.Rows)
{
string lotName = row["LotName"].ToString();
int recordCount = Convert.ToInt32(row["record_count"]);
int maxWaferNo = Convert.ToInt32(row["max_waferno"]);
maxWaferNo = Js(maxWaferNo);
if (IsLot(lotName))
{
if (maxWaferNo != recordCount)
{
row["WaferNum"] = maxWaferNo; // 添加 WaferNum 列并赋值
mismatchedRecords.Add(row);
}
}
}
```
在这个修改后的代码中,我们假设 `reDb` 是一个包含数据的 `DataTable` 对象。
在 `if (maxWaferNo != recordCount)` 条件满足时,我们首先通过 `row["WaferNum"]` 来访问 `DataRow` 中名为 `WaferNum` 的列,并将其赋值为 `maxWaferNo`。
然后,我们将修改过的 `DataRow` 添加到 `mismatchedRecords` 列表中。
这样,`mismatchedRecords` 中的每个 `DataRow` 都会包含一个名为 `WaferNum` 的新列,并且该列的值为对应行中的 `maxWaferNo`。
阅读全文