问题标签 [servicestack-bsd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1354 浏览

c# - Servicestack - 操作顺序、验证和请求过滤器

我在RequestFilter执行顺序中检测到问题。

ServiceStack 中的ValidationFeature插件是一个只注册一个全局请求过滤器的插件。操作顺序指出全局请求过滤器在优先级 <0 的过滤器属性之后和优先级 >=0 的过滤器属性之前执行

我的BasicAuth过滤器具有 -100 优先级,事实上,如果Service在类级别注释一切都会顺利,但是当注释在方法级别时它会失败,然后执行身份验证过滤器。

我正在使用 3.9.70 有什么快速解决方法吗?谢谢

0 投票
1 回答
1091 浏览

servicestack - 最新版本的 ServiceStack 3 中是否存在构建问题?

使用 ServiceStack 3.9.71.0 编译项目时,Visual Studio 中出现了以下警告(似乎也影响了最新版本)。不知道为什么它之前没有出现,但是在我创建了一个引用我的主项目的测试库并且都引用了相同的服务堆栈 DLL 之后它已经开始出现了:

警告 2 发现同一依赖程序集的不同版本之间存在无法解决的冲突。当日志详细程度设置为详细时,这些引用冲突会列在构建日志中。C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets 1635

检查构建日志显示:

10> “ServiceStack.Interfaces, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”和“ServiceStack.Interfaces, Version=3.9.60.0, Culture=neutral, PublicKeyToken=null”之间存在冲突。10> 选择“ServiceStack.Interfaces, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”是因为它是主要的,而“ServiceStack.Interfaces, Version=3.9.60.0, Culture=neutral, PublicKeyToken=null”不是。10> 依赖于“ServiceStack.Interfaces, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”的引用 [C:\proj\packages\ServiceStack.Common.3.9.71\lib\net35\ServiceStack.Interfaces.dll ] ...

此错误是正确的,因为除了旧版本的 ORMLite 之外,NuGet 中的最新版本似乎还引用了旧版本的 ServiceStack.Interfaces ( http://i.imgur.com/4vw3069.jpg )。我已经从我的系统中删除了所有以前版本的 ServiceStack,因此它不会拾取任何旧的 DLL。我的项目只有对 ServiceStack、common、interfaces 和 text 的引用;我删除了 ORM,因为我不使用它,但将它添加到两个项目中并没有帮助。

有点不确定如何解决这个错误,因为 Github 自 3.9.60 以来似乎没有更新,有什么想法吗?

0 投票
1 回答
315 浏览

c# - RequestFilter Validation 客户端是否依赖?

我应该期望通过实例化引用服务时触发请求过滤器验证(例如FluentValidation )吗?AppHostBase.ResolveService<>

到目前为止,我仅在使用类型化客户端(特别是在本例中为JsonServiceClient )时才成功收到对 C# 应用程序的正确错误响应。

0 投票
1 回答
186 浏览

servicestack - 自托管 ServiceStack 3.x 服务的冗余

我们正在使用 ServiceStack 3.x 运行自托管 AppService

如果当前作为主服务器运行的服务失败,我们希望在客户端上有一个自动故障转移机制。

目前的客户端是使用默认 SS JSONClient 的强类型 C#,但我们将来会添加基于 Web 的客户端 (AngularJS)。

有没有人有想法,如何做到这一点?

0 投票
1 回答
912 浏览

servicestack - ServiceStack.OrmLite 等效于实体框架中的 Single/SingleOrDefault

目前在使用 ServiceStack 中的 OrmLite 库时,如果我想选择单个实体,我会这样做:

然而,由于 Single 更精确(显然,如果多个具有相同 id 的用户最终进入数据库,我希望抛出异常我想知道是否有可以使用的重载。目前,当我执行 db.Single 时,我只是通过手动过滤获得了过载:

0 投票
1 回答
1323 浏览

git - 如何获取最新的 Service Stack v3 版本?

nuget.org上发布的最后一个 v3 版本是 3.9.71 - 从那时起,我想在我的项目中包含很多修复。

那么什么是首选的方法呢?显然,我可以将来自 Github 的 v3 分支作为子模块添加到我的 Git 中,然后引用.csproj我所需的所有.sln内容 - 但我更喜欢只有 DDL(理想情况下通过 NuGet)。

目前是否有人在做我可以通过 NuGet/Git 仅使用 DLL 引用的夜间构建?还是我应该开始这样做?

0 投票
2 回答
1518 浏览

c# - ServiceStack:如果类型是抽象的,请求 DTO 中的属性变为空

我有一个基于 ServiceStack 3 的客户端-服务器架构。我正在尝试创建一个服务,其请求 DTO 包含一个具有抽象类型的属性,两个不同的具体类实现它。抽象类型可以是抽象类也可以是接口;但是,无论哪种情况,服务器都会在属性中接收一个空对象。

客户端和服务器都引用了三个程序集和相应的命名空间:TestClientServer和。CommonLib

也就是说,分布在三个程序集中:

如果我将Context属性更改GetThing为 typeThis而不是IThisOrThat,则此方法有效。将其保留为接口,或更改IThisOrThat为抽象类,导致数据以null.

我假设这是一个序列化问题。我尝试将接口更改为抽象类并使用适当KnownType的属性对其进行装饰,但 ServiceStack 的序列化程序似乎并没有从中受益。有什么诀窍可以做到这一点吗?

0 投票
1 回答
261 浏览

c# - ServiceStack 遍历所有请求/响应 DTO

如何遍历使用路由设置的所有请求/响应 DTO?

例如这样的路线:

并像这样响应 DTO:

我想要一个服务操作,我可以遍历所有设置路由,并检索:

  • 请求网址
  • 班级名称
  • 请求属性
  • 响应 DTO 属性

是否有一些内置的Servicstack可以做到这一点?

最后我想用它来自动生成 ExtJS 存储/模型。我也对更好/替代方法感兴趣。

编辑:

这是我想出的解决方案:gist

/extjs/javascript服务返回 extjs store/models 的/extjs/metadata路由上,服务返回一个带有 store/model 文件夹的 zip 文件,您可以将其放入新创建的 Sencha Architect 项目中。这些模板基于 Architect v. 3.0.1.1343 生成的内容。

这假设一条装饰如下的路线:

当前实现仅适用于请求/响应 DTO 中的简单属性。有改进的余地...

0 投票
1 回答
4085 浏览

c# - 使用 ServiceStack Funq IoC:如何注入依赖项?

我有 WinForm 应用程序,我想使用 ServiceStack 依赖注入机制:

然后在某种形式的类中使用它:

AppApplicationContext总是null。在无参数构造函数中我写:

然后一切正常。但这是正确的方法吗?我的意思是 AppApplicationContext 不应该由 IoC 自动解决?并且 WinForm 必须有无参数的构造函数。

其余代码:

0 投票
1 回答
724 浏览

c# - 如何防止 ServiceStack 将空请求参数值反序列化为 null?

我有一个非常简单的 ServiceStack 服务,我通过JSONServiceClientc# 类型的 API 调用它。

但是,当我在Requestparams 中有空参数时,ServiceStack 会将其反序列化为空值。我看过,似乎在 JSV 中它是设计使然,但 JSON 应该保留非空值。我现在还设置了以下两个设置,Global.asax.cs但没有任何改进:

我正在使用 ServiceStack 3.9.69 版和 IIS 8.0 版。