jjzjj

ServiceStack

全部标签

c# - ServiceStack 服务可以包含多个方法吗?

环境是VisualStudio2012、ServiceStack、ASP.NETWeb应用程序项目(遵循https://github.com/ServiceStack/ServiceStack/wiki/Create-your-first-webservice)查看ServiceStack.Examples中的一些类,我注意到大多数服务只包含一个方法。要么覆盖Execute()或者,如果是REST服务,则重写OnPost/Get/Put/Delete().如果我需要实现数十个函数,我应该如何制作完整的API集RegisterUser(),RemoveUser(),AddFriend()

c# - ServiceStack.Text 如何将类序列化为 JSON

刚刚下载了ServiceStack.Text以在我的ASP.NET中使用它。我有很多属性的类,想将其中五个(字符串、整数、二进制)序列化为JSON。谁能发布简单示例如何从我的类创建JSON对象? 最佳答案 默认情况下,ServiceStack将反序列化POCO的所有公共(public)属性。如果您只想序列化几个属性,那么您需要使用[DataContract]、[DataMember]属性来装饰您的类(与您使用MSDataContractJsonSerializer时的方式相同),例如:[DataContract]publicclas

c# - 有 CSV 序列化器这样的东西吗? (类似于 XmlSerializer)

我正在研究CSV文件的序列化和反序列化,我想知道是否存在一个概念类似于XmlSerializer的现有库,它可以声明性地定义对象并将它们序列化到文件或流或从文件或流中序列化(反序列化)。我环顾四周,但没有发现任何专注于序列化的东西。我已经有了非常可靠的代码来根据RFC4180解析CSV文档,但真正有用的是序列化部分。我不寻找的只是一个解析器、使用String.Split()的建议等。是否有现有项目,或者我应该构建一个?额外的礼仪问题:如果我最终推出了自己的序列化程序,用指向codeplex项目的链接来回答这个问题是否合适? 最佳答案

c# - ServiceStack.Text 是否提供 JSON 的 pretty-print ?

TL;DR:ServiceStack.Text中是否有内置的方法来生成打印精美的JSON?我正在使用ServiceStack.Text用于进行JSON序列化。到目前为止它工作得很好,但是创建的JSON(使用.ToJSON())没有用空格或换行符格式化(最有可能在通过网络发送时节省空间)。但是,在某些情况下,最好对JSON进行格式化以便于人类阅读。.Dump()方法进行某种格式化,但不会生成有效的JSON(即缺少周围的双引号)。 最佳答案 ServiceStack.Text中的T.Dump()和T.PrintDump()扩展方法只是使

c# - ServiceStack.Net 的多个可选参数

我正在尝试使用ServiceStack.Net实现具有多个可选参数的服务目前我的路线是这样的Routes.Add("/save/{Year}/{Week}");我想像这样支持uris:/save/2010/12/Monday/4/Tuesday/6/Wednesday/7即星期一=4,星期二=6,星期三=7但是我希望能够忽略天数,即调用该服务的人可以决定他们是否要保存每一天的每个值...即像这样缺少参数值?Monday=4&Wednesday=7&Friday=6当然,一种解决方案是使用以下路由,当我不想保存值时只传递0。Routes.Add("/save/{Year}/{Week}/

c# - 如何使用 ServiceStack 客户端使用文件

我正在尝试使用ServiceStack以RESTful方式将文件返回给ServiceStack客户端。我已经阅读了关于SO(here和here)的其他问题,这些问题建议使用HttpResult和FileInfo对象或MemoryStream以允许将ContentTypeheader更改为相关文件类型。当我通过浏览器调用服务时,这对我有用,正确的文件会自动开始下载。我如何使用ServiceStack客户端之一使用文件?我正在使用RequestDTO并尝试使用类似的东西返回returnnewHttpResult(newFileInfo("file.xml"),asAttachment:tr

c#文件上传的分块传输结合访问ServiceStack中的路由参数

我正在寻找使用IRequiresRequestStream接口(interface)来启用使用ServiceStack(v3)和分块传输编码的大文件上传(视频文件)。标准文件上传似乎无法处理我们客户上传的一些较大的视频文件,因此我们希望为这些文件启用分块传输编码。我已经成功测试了分块传输编码文件上传,但是还有一些参数需要与文件一起发送。由于IRequiresRequestStream绕过ServiceStack请求对象解析器,请求对象中与Stream一起的任何其他参数显然不会被填充。作为解决方法,我可以看到以下选项:查询字符串参数,可通过this.Request.QueryString

c# - ServiceStack 验证并不总是触发

所以我尝试使用RavenDB和ServiceStack构建一个端到端集成测试套件,但我遇到了一个非常奇怪的问题,即验证不会针对某些请求运行。这真的很奇怪,我不确定我做错了什么。我正在使用NCrunch。有时测试通过,有时失败。希望这是一个简单的修复,并且是我正在做的一些头脑清醒的事情。您可以在http://github.com/khalidabuhakmeh/endtoend上下载整个项目。除了启用VS2012和NuGet包还原之外,您不需要任何其他东西。更新:我决定在NCrunch和ResharperTestRunner中运行它,两者都给出相同的结果[见下图]。更新更新:我认为它可能

c# - ServiceStack FluentValidation 中的自定义响应 DTO

我正在评估FluentValidationinServiceStack用于处理请求DTO的自动验证:Plugins.Add(newValidationFeature());container.RegisterValidators(typeof(MyValidator).Assembly);错误通过序列化ErrorResponseDTO返回给客户端,可能如下所示:{"ErrorCode":"GreaterThan","Message":"'Age'mustbegreaterthan'0'.","Errors":[{"ErrorCode":"GreaterThan","FieldName"

c# - ServiceStack 是如何处理并发调用的?

ServiceStack是如何处理并发调用的?我在WCF中寻找等效的ConcurrencyMode.Multiple。我的WCF服务设置了这个属性:[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerCall,ConcurrencyMode=ConcurrencyMode.Multiple,UseSynchronizationContext=false)]我是否需要在ServiceStack中启用任何功能才能让它在每次调用时使用多个线程? 最佳答案 ServiceS