Biztalk 映射中的字符串未被识别为有效的日期时间
String was not recognized as a valid DateTime in Biztalk Mapping
我们在 LINQPad 5 中有以下代码可以编译并给出预期的输出:
void Main(){
Console.WriteLine(thissucks("Sometext. IfCondition: 20180125.")); }
public string thissucks(string inputString){
string[] words = inputString.Split(':');
string date = words.GetValue(1).ToString();
string comment = words.GetValue(0).ToString();
date = date.Replace(".","");
date = date.Trim();
if (inputString.Contains("IfCondition"))
{
DateTime formatDate = DateTime.ParseExact(date,"yyyyMMdd", null);
return comment + ": " + formatDate.ToString("dd.MM.yyyy") + ".";
}
else
{
return inputString;
}
}
这会产生输出:Sometext. IfCondition: 25.01.2018
但是,当我们将它放入 biztalk 映射中的脚本 functoid 时,我们得到错误 "String was not recognized as a valid DateTime"
正如 Panagiotis 所建议的那样,文件中的输入行产生了这个错误,并在不是有效 DateTime 的字符串后面输入了 :
。
我们在 LINQPad 5 中有以下代码可以编译并给出预期的输出:
void Main(){
Console.WriteLine(thissucks("Sometext. IfCondition: 20180125.")); }
public string thissucks(string inputString){
string[] words = inputString.Split(':');
string date = words.GetValue(1).ToString();
string comment = words.GetValue(0).ToString();
date = date.Replace(".","");
date = date.Trim();
if (inputString.Contains("IfCondition"))
{
DateTime formatDate = DateTime.ParseExact(date,"yyyyMMdd", null);
return comment + ": " + formatDate.ToString("dd.MM.yyyy") + ".";
}
else
{
return inputString;
}
}
这会产生输出:Sometext. IfCondition: 25.01.2018
但是,当我们将它放入 biztalk 映射中的脚本 functoid 时,我们得到错误 "String was not recognized as a valid DateTime"
正如 Panagiotis 所建议的那样,文件中的输入行产生了这个错误,并在不是有效 DateTime 的字符串后面输入了 :
。