public async Task <ActionResult <IResult> > Get(string datastoreName, string scenarioName) { RelationResult relationResult; if (string.IsNullOrWhiteSpace(datastoreName) || string.IsNullOrWhiteSpace(scenarioName)) { relationResult = new RelationResult(false, "datastoreName 和 scenario 不能为空"); } else { int displayMax = dsManager.GetMaxDisplayedEntityNumber(); GraphExecutor executor = new GraphExecutor(datastoreName); (bool isDSExist, bool isScenarioExist, bool isDisplable, string message, List <VisulizedVertex> vvs, List <VisulizedEdge> ves) = executor.GetVertexesAndEdgesByScenarios(new List <string>() { scenarioName }, displayMax); if (!isDSExist) { relationResult = new RelationResult(false, "Datastore " + datastoreName + "不存在,或没有数据导入。"); } else { if (!isScenarioExist) { relationResult = new RelationResult(false, "Scenario " + scenarioName + "不存在,或没有数据导入。"); } else { if (!isDisplable) { relationResult = new RelationResult(false, "Scenario " + scenarioName + " 包含的实体数量超过了最大显示量的设置(最多显示 " + displayMax + " 个实体),无法显示完整图谱,请通过搜索查看部分图谱。"); } else { string scenarioStr = "scenario: " + scenarioName + " 的图谱如下:"; relationResult = new RelationResult(true, scenarioStr + " 的图谱如下:"); relationResult.nodes = vvs; relationResult.relations = ves; } } } } log.Information("[Response]: " + JsonConvert.SerializeObject(relationResult)); return(Ok(relationResult)); }