diff --git a/Esiur/Esiur.csproj b/Esiur/Esiur.csproj index 20d92e6..471923b 100644 --- a/Esiur/Esiur.csproj +++ b/Esiur/Esiur.csproj @@ -7,12 +7,12 @@ https://github.com/Esiur/Esiur-dotnet/blob/master/LICENSE http://www.esiur.com true - 1.8.5 + 1.8.6.1 https://github.com/esiur/esiur-dotnet Ahmed Kh. Zamil - 1.8.5.0 + 1.8.6.1 Esiur Foundation - 1.8.5.0 + 1.8.6.1 Esiur Esiur Esiur diff --git a/Esiur/Proxy/TemplateGenerator.cs b/Esiur/Proxy/TemplateGenerator.cs index 8fca0b0..7223af8 100644 --- a/Esiur/Proxy/TemplateGenerator.cs +++ b/Esiur/Proxy/TemplateGenerator.cs @@ -46,9 +46,13 @@ namespace Esiur.Proxy { if (templateDataType.Type == DataType.Resource) - return templates.First(x => x.ClassId == templateDataType.TypeGuid).ClassName; + return templates.First(x => x.ClassId == templateDataType.TypeGuid && (x.Type == TemplateType.Resource || x.Type == TemplateType.Wrapper )).ClassName; else if (templateDataType.Type == DataType.ResourceArray) - return templates.First(x => x.ClassId == templateDataType.TypeGuid).ClassName + "[]"; + return templates.First(x => x.ClassId == templateDataType.TypeGuid && (x.Type == TemplateType.Resource || x.Type == TemplateType.Wrapper )).ClassName + "[]"; + else if (templateDataType.Type == DataType.Record) + return templates.First(x => x.ClassId == templateDataType.TypeGuid && x.Type == TemplateType.Record).ClassName; + else if (templateDataType.Type == DataType.RecordArray) + return templates.First(x => x.ClassId == templateDataType.TypeGuid && x.Type == TemplateType.Record).ClassName + "[]"; var name = templateDataType.Type switch { @@ -112,6 +116,8 @@ namespace Esiur.Proxy dir = path[2].Replace(":", "_"); var templates = con.GetLinkTemplates(path[3]).Wait(60000); + // no longer needed + Warehouse.Remove(con); var tempDir = new DirectoryInfo(Path.GetTempPath() + Path.DirectorySeparatorChar + Misc.Global.GenerateCode(20) + Path.DirectorySeparatorChar + dir); @@ -152,6 +158,7 @@ namespace Esiur.Proxy File.WriteAllText(tempDir.FullName + Path.DirectorySeparatorChar + "Esiur.Generated.cs", typesFile); + return tempDir.FullName; }