如何将整数参数传递给.Net MVC Restful服务调用?

如何将整数参数传递给.Net MVC Restful服务调用?,.net,asp.net-mvc,swagger,.net,Asp.net Mvc,Swagger,我正在编写一个.NETWebAPI MVC restful web服务。 我在以整数和long形式传递参数时遇到问题 下面是公开服务调用的示例定义 [HttpGet("{sampleID}")] public SummaryDataCounts Get(int sampleID) {} 我正在使用开源工具Swagger作为解决方案的一部分。 当我通过VisualStudio17(和Swagger测试页面)进行调试时,我会得到预期的结果。输入参数实际上是具有指定值的整数 为了生成客户端代码,我在

我正在编写一个.NETWebAPI MVC restful web服务。 我在以整数和long形式传递参数时遇到问题

下面是公开服务调用的示例定义

[HttpGet("{sampleID}")]
public SummaryDataCounts Get(int sampleID) {}
我正在使用开源工具Swagger作为解决方案的一部分。 当我通过VisualStudio17(和Swagger测试页面)进行调试时,我会得到预期的结果。输入参数实际上是具有指定值的整数

为了生成客户端代码,我在命令行上使用了swagger codegen cli。 在客户端,它沿着预期的参数类型(在本例中为“int”)生成预期的原型

下面是我的命令行调用的样子:

swagger-codegen-cli.jar generate^ --verbose^ --input-spec http://localhost:56995/swagger/v1/swagger.json^ --lang csharp^ --output output/SampleAPI
我注意到以下几点:

1)在客户端,我的服务方法原型如下:

SummaryDataCounts(int? sampleID) 
为什么我的参数现在是可为空的整数

2)当从我的客户机调用该方法(使用可为空的整数参数)时,无论我传入什么数字,服务都会看到一个值为零(0)的参数

为什么会这样? 我的方法定义有问题吗


谢谢,JB

看看这是否相关:海伦:谢谢你的提示。这似乎是对的。我想我已经根据需要修饰了我所有的非字符串类成员和服务参数…我如何修饰我的参数以满足服务器端的需要?您使用哪个库来生成Swagger规范?Swashback?服务器上的Swashback以公开JSON接口和swagger(swagger codegen cli)以生成客户端代码。