嗨,我第一次使用 PuppeteerSharp,想知道 EvaulateExpressionAsync 是否支持转换为复杂 c# 对象的方法。所以当我尝试做这样的事情时:
var allResultsSelector = ".sortableTable.resultTable tr.studyResultRow";
var jsSelectAllAnchors = $"Array.from(document.querySelectorAll('{allResultsSelector}')).map(f=>f.innerText);";
await frmSearch.WaitForSelectorAsync(allResultsSelector);
var urls = await frmSearch.EvaluateExpressionAsync<InteleStudyResult[]>(jsSelectAllAnchors);
c# 现在输入
public class InteleStudyResult
{
public string PatientName { get; set; }
//public string PatientId { get; set; }
//public DateTime DOB { get; set; }
//public string Sex { get; set; }
//public string Accession { get; set; }
//public DateTime StudyDate { get; set; }
//public string Modality { get; set; }
//public int? Series { get; set; }
//public string StudyDescription { get; set; }
}
Eval 调用发生异常
Newtonsoft.Json.JsonSerializationException HResult=0x80131500 Message=将值“我的字符串”转换为“InteleradWebAccessor.InteleStudyResult”时出错。路径“[0]”。来源=Newtonsoft.Json
内部异常 1:ArgumentException:无法从 System.String 转换或转换为 InteleradWebAccessor.InteleStudyResult。
如果这不受支持,我将非常感谢有关使用 PuppeteerSharp 处理将 html 表行转换为 ac# 复杂类型的最佳方法的建议