c# - 将参数传递给 Nancy Route

标签 c# node.js nancy

我之前有一个 Web 服务,其方法如下:

public class DxDService : System.Web.Services.WebService
{
   [WebMethod]
   [ScriptMethod(ResponseFormat = ResponseFormat.Json, UseHttpGet = true)]
   public string GetSData(string strFirstName, string strLastName, string strDOB, string strSource, SortDetails sortDetails, string ID)
   {
        //manipulate the params and used to return data
   }
}

我使用下面的代码在我的 NodeJS 应用程序中使用了这个 Webservice

var soap=require('soap')

var url = 'http://serverName/DxDService.asmx?wsdl';
var args={'strFirstName':req.actions.firstName,'strLastName':req.actions.lastName, 'strDOB':req.actions.dob, 'strSource':'PtSearch','sortDetails':sort,'ID':''};
soap.createClient(url, function(err, client) {
      client.GetSData(args,function(err, result) {
          req.res = result;
          next();
      });
});

但作为升级的一部分,我们将从 Web 服务迁移到 Windows 服务,Web 服务在启动时在本地系统中创建一个主机,并且该主机将具有此 webservice 的功能。我正在使用 Nancy 此处启动主机。但我对如何接收 Nancy Routes 中的参数感到困惑,就像我在网络服务中收到的一样。以下是我目前在 Windows 服务 中所拥有的内容。

Service1.cs

private NancyHost host;
protected override void OnStart(string[] args)
{
     var url = "http://127.0.0.1:port";
     this.host = new NancyHost(new Uri(url));
     this.host.Start();
}

RootRoutes.cs 实现 NancyModules

public class RootRoutes : NancyModule
{
    public RootRoutes()
    {
        //This should be same as GetSData method in webservice but this acts as Route
        Get["/GetSData"] = parameters =>
        {
            //How can I access params here as I did in webservice method?
            //below is just a sample piece of code showing what returns on browsing
            http://127.0.0.1:port/GetSData

            var test = new
            {
                Name = "Guruprasad Rao",
                Twitter="@kshkrao3",
                Occupation="Software Developer"
            };
            return Response.AsJson(test);
        };
    }
}

如何实现这一目标?任何想法/帮助表示赞赏。

最佳答案

使用字符串searchTerm = this.Request.Query["term"]获取所有Get方法请求参数

关于c# - 将参数传递给 Nancy Route,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35596922/

相关文章:

node.js - 使用 Joi (Node.js) 中的外部函数进行验证

node.js - MeanJs:如何发布数据?为什么服务操作不触发?

node.js - ld : unsupported tapi file type '!tapi-tbd' in YAML file

azure - 为什么 WAIISHost 会锁定某些文件

c# - 当只测试一条路线时,我是否需要为我所有的 NancyModules 注册依赖项?

c# - 匿名泛型——我应该在哪里使用它?

C# - 没有模块句柄?

c# - 如何在 Umbraco 7 中隐藏属性

c# - Nancy Self Host 使用 Razor View 的空白响应

c# - 将文件从 Azure Blob 同步到本地