如果你已经获取到了生产日期和效期的字符串,可以将它们转换为 `DateTime` 类型,并计算出失效日期。例如:
```csharp
string productDateString = dr["生产日期"].ToString();
string vadiateMonthString = dr["效期"].ToString();
DateTime productDate;
bool success1 = DateTime.TryParse(productDateString, out productDate);
int vadiateMonth;
bool success2 = int.TryParse(vadiateMonthString, out vadiateMonth);
if (success1 && success2)
{
// 计算失效日期
DateTime expireDate = productDate.AddMonths(vadiateMonth);
// 将失效日期转换为字符串并赋值给 clsGrid.MaterialStandard_ExpireDate 变量
clsGrid.MaterialStandard_ExpireDate = expireDate.ToString("yyyy年MM月dd日");
}
else
{
// 转换失败,处理异常情况
}
```
这个例子中,我们首先使用 `DateTime.TryParse()` 方法将生产日期和效期的字符串转换为 `DateTime` 和 `int` 类型。如果转换成功,我们使用 `AddMonths()` 方法计算出失效日期,并使用 `ToString()` 方法将其格式化为 "yyyy年MM月dd日" 的字符串,并赋值给 `clsGrid.MaterialStandard_ExpireDate` 变量。
需要注意的是,如果生产日期或效期的字符串无法转换为对应的类型,或者计算失效日期时发生了异常,都会导致转换失败。在实际开发中,应该对此进行判断和处理。