Skip to content

Commit 4848d73

Browse files
committed
更新CommandLine
1 parent c3ea432 commit 4848d73

File tree

9 files changed

+31
-42
lines changed

9 files changed

+31
-42
lines changed

WebApiClientCore.OpenApi.SourceGenerator/CSharpHtml.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ public CSharpHtml(string path)
7979
path = Path.ChangeExtension(path, ".cshtml");
8080
}
8181

82+
path = Path.Combine(AppContext.BaseDirectory, path);
8283
if (File.Exists(path) == false)
8384
{
8485
throw new FileNotFoundException(path);
@@ -189,9 +190,10 @@ public static IRazorEngineCompiledTemplate Compile(string content)
189190
builder.Inherits(typeof(HtmlTempate));
190191
builder.AddAssemblyReference(typeof(NSwag.OpenApiSchema).Assembly);
191192
builder.AddAssemblyReference(typeof(NJsonSchema.JsonSchema).Assembly);
192-
builder.AddAssemblyReference(typeof(Newtonsoft.Json.Schema.JsonSchema).Assembly);
193193

194+
builder.AddUsing("NSwag");
194195
builder.AddUsing("System");
196+
builder.AddUsing("WebApiClientCore.OpenApi.SourceGenerator");
195197
}));
196198
}
197199
}

WebApiClientCore.OpenApi.SourceGenerator/OpenApiDocOptions.cs

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,5 @@ public class OpenApiDocOptions
1919
/// </summary>
2020
[Option('n', "namespace", MetaValue = "Namespace", Required = false, HelpText = "代码的命名空间,如WebApiClientCore")]
2121
public string Namespace { get; set; }
22-
23-
/// <summary>
24-
/// 返回使用帮助
25-
/// </summary>
26-
/// <returns></returns>
27-
[HelpOption]
28-
public string GetUsage()
29-
{
30-
return HelpText.AutoBuild(this, current => HelpText.DefaultParsingErrorsHandler(this, current));
31-
}
3222
}
3323
}
Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,21 @@
11
using CommandLine;
2-
using System;
32

43
namespace WebApiClientCore.OpenApi.SourceGenerator
54
{
65
class Program
76
{
87
static void Main(string[] args)
98
{
10-
var options = new OpenApiDocOptions();
11-
if (Parser.Default.ParseArguments(args, options))
12-
{
13-
var doc = new OpenApiDoc(options);
14-
doc.GenerateFiles();
15-
}
16-
else
17-
{
18-
Console.Read();
19-
}
9+
Parser.Default.ParseArguments<OpenApiDocOptions>(args)
10+
.WithParsed(options =>
11+
{
12+
var doc = new OpenApiDoc(options);
13+
doc.GenerateFiles();
14+
})
15+
.WithNotParsed(errors =>
16+
{
17+
errors.Output();
18+
});
2019
}
2120
}
2221
}

WebApiClientCore.OpenApi.SourceGenerator/Properties/launchSettings.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"profiles": {
33
"WebApiClient.Tools.Swagger": {
44
"commandName": "Project",
5-
"commandLineArgs": "-o petstore.openApi.json"
5+
"commandLineArgs": "-o petstore.json"
66
}
77
}
88
}

WebApiClientCore.OpenApi.SourceGenerator/Views/HttpApi.cshtml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
@inherits WebApiClientCore.OpenApi.SourceGenerator.HtmlTempate<WebApiClientCore.OpenApi.SourceGenerator.HttpApi>
1+
@inherits HtmlTempate<HttpApi>
2+
@using NSwag;
3+
@using WebApiClientCore.OpenApi.SourceGenerator;
24

35
<HttpApi>
46
<usings>
@@ -80,29 +82,29 @@
8082
<span>[Required]</span>
8183
}
8284

83-
if (parameter.VariableName != parameter.Name && parameter.Kind != NSwag.OpenApiParameterKind.Header)
85+
if (parameter.VariableName != parameter.Name && parameter.Kind != OpenApiParameterKind.Header)
8486
{
8587
<span>[AliasAs("@(parameter.Name)")]</span>
8688
}
8789

88-
if (parameter.Kind == NSwag.OpenApiParameterKind.Path || parameter.Kind == NSwag.OpenApiParameterKind.Query)
90+
if (parameter.Kind == OpenApiParameterKind.Path || parameter.Kind == OpenApiParameterKind.Query)
8991
{
90-
var schema = parameter.Schema as NSwag.OpenApiParameter;
91-
if (schema != null && schema.CollectionFormat != NSwag.OpenApiParameterCollectionFormat.Undefined
92-
&& schema.CollectionFormat != NSwag.OpenApiParameterCollectionFormat.Multi)
92+
var schema = parameter.Schema as OpenApiParameter;
93+
if (schema != null && schema.CollectionFormat != OpenApiParameterCollectionFormat.Undefined
94+
&& schema.CollectionFormat != OpenApiParameterCollectionFormat.Multi)
9395
{
9496
<span>[PathQuery(CollectionFormat = CollectionFormat.@(schema.CollectionFormat))]</span>
9597
}
9698
}
97-
else if (parameter.Kind == NSwag.OpenApiParameterKind.Header)
99+
else if (parameter.Kind == OpenApiParameterKind.Header)
98100
{
99101
<span>[Header("@(parameter.Name)")]</span>
100102
}
101103
else if (parameter.IsXmlBodyParameter == true)
102104
{
103105
<span>[XmlContent]</span>
104106
}
105-
else if (parameter.Kind == NSwag.OpenApiParameterKind.FormData)
107+
else if (parameter.Kind == OpenApiParameterKind.FormData)
106108
{
107109
if (parameter.IsFile == false)
108110
{
@@ -116,7 +118,7 @@
116118
}
117119
}
118120
}
119-
else if (parameter.Kind == NSwag.OpenApiParameterKind.Body)
121+
else if (parameter.Kind == OpenApiParameterKind.Body)
120122
{
121123
if (parameter.IsBinaryBody == false)
122124
{

WebApiClientCore.OpenApi.SourceGenerator/Views/HttpModel.cshtml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
@inherits WebApiClientCore.OpenApi.SourceGenerator.HtmlTempate<WebApiClientCore.OpenApi.SourceGenerator.HttpModel>
1+
@inherits HtmlTempate<HttpModel>
2+
@using WebApiClientCore.OpenApi.SourceGenerator;
23

34
<HttpModel>
45
<usings>

WebApiClientCore.OpenApi.SourceGenerator/WebApiClientCore.OpenApi.SourceGenerator.csproj

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<Summary>将本地或远程OpenApi文档解析生成WebApiClientCore的接口定义代码文件的工具</Summary>
1111

1212

13-
<Version>1.0.6</Version>
13+
<Version>1.0.6-beta2</Version>
1414
<Authors>laojiu</Authors>
1515
<Company>laojiu</Company>
1616
<Copyright>Copyright © laojiu 2017-2020</Copyright>
@@ -27,16 +27,13 @@
2727

2828

2929
<ItemGroup>
30-
<PackageReference Include="CommandLineParser" Version="1.9.71" />
30+
<PackageReference Include="CommandLineParser" Version="2.8.0" />
3131
<PackageReference Include="RazorEngineCore" Version="2020.6.1" />
32-
<PackageReference Include="NSwag.CodeGeneration.CSharp" Version="13.5.0" />
32+
<PackageReference Include="NSwag.CodeGeneration.CSharp" Version="13.6.2" />
3333
</ItemGroup>
3434

3535
<ItemGroup>
36-
<None Update="petstore.openApi.json">
37-
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
38-
</None>
39-
<None Update="petstore.openApi.bat">
36+
<None Update="petstore.json">
4037
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
4138
</None>
4239
<None Update="Views\HttpApi.cshtml">

WebApiClientCore.OpenApi.SourceGenerator/petstore.openApi.json renamed to WebApiClientCore.OpenApi.SourceGenerator/petstore.json

File renamed without changes.

WebApiClientCore.OpenApi.SourceGenerator/petstore.openApi.bat

Lines changed: 0 additions & 2 deletions
This file was deleted.

0 commit comments

Comments
 (0)