小编Dmi*_* S.的帖子

如何在.NET 4.0中检查泛型参数是否是动态的

我上课了ObjectMapper<T>..NET 4.0中是否有任何方法可以判断是否typeof(T)存在dynamic?我希望能够在成员方法中确定该类是否已初始化为new ObjectMapper<dynamic>()vs new ObjectMapper<SomeConcreteClass>()..

c# .net-4.0

11
推荐指数
2
解决办法
2851
查看次数

在IIS 7/7.5中注册PATCH HTTP谓词

我想在用ASP MVC 3实现的RESTful服务中实现最近批准的PATCH HTTP谓词.我在web.config文件中添加了以下设置.

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <handlers>
            <add name="PATCHVerbHandler" path="*" verb="PATCH" modules="ProtocolSupportModule" requireAccess="None" /> 
        </handlers>
        <security>
            <requestFiltering>
                <verbs>
                    <add verb="PATCH" allowed="true" />
                </verbs>
            </requestFiltering>
        </security>
    </system.webServer>
</configuration>
Run Code Online (Sandbox Code Playgroud)

动作方法用AcceptVerbs("PATCH")属性修饰.

该服务与PATCH动词一起正常工作.URL被路由到正确的操作方法并返回正确的数据.

奇怪的问题是,如果我使用与使用PATCH谓词的任何路由都不匹配的其他URL,IIS将返回"200 OK"而不是"404 Not Found".所有标准动词(GET,PUT,DELETE,POST,HEAD,OPTIONS)都没有这个问题.

我是否需要为PATCH动词注册其他处理程序,还是路由问题?任何帮助表示赞赏.

rest iis-7 asp.net-mvc-3

5
推荐指数
1
解决办法
2951
查看次数

是否可以使用 ASP .NET Core 中的 Swashbuckle 以 Swagger 2.0 和 Open API 3 格式公开相同的 Swagger JSON?

我们有一个旧应用程序仅适用于 Swagger 2.0 JSON 格式。对于其他一切,我们希望使用开放 API 格式。

Swashbuckle .NET Core 是否有任何方法可以在单独的 URL 下以不同格式公开 JSON?看起来方法选项SerializeAsV2中的属性UseSwagger对于所有端点都是全局的。

基本上我希望有以下端点,其中包含不同格式的相同 API 数据。

/swagger/v1/openapi/swagger.json
/swagger/v1/swagger2/swagger.json
Run Code Online (Sandbox Code Playgroud)

asp.net-core swashbuckle.aspnetcore

5
推荐指数
1
解决办法
1070
查看次数

NLog 4.0 忽略规则的最终属性

我的应用程序使用NLog.config如下所示配置的 NLog 。它还使用 RavenDB 数据库,该数据库默认使用活动的 NLog 设置进行日志记录。

它会产生大量污染日志的 DEBUG 和 INFO 消息。我确实想记录 ERROR 和 WARN 消息。RavenDB 创建的所有记录都来自以Raven.

我创建了如下所示的规则。基本上有一个最终规则可以防止来自 Raven.* 命名空间的 INFO/DEBUG 消息写入日志文件。在我将 NuGet 包升级到 NLog 4.0 之前,一切都运行良好。现在所有 RavenDB 消息都写入日志文件。

这是错误还是 NLog 版本之间发生了一些配置更改?

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <targets>
    <target name="file" xsi:type="AsyncWrapper" queueLimit="1000" overflowAction="Discard">
      <target
        name="file"
        xsi:type="File"
        layout="${longdate} - ${level:upperCase=true} - ${identity} - ${logger} - ${message}${onexception:inner=${newline}${exception:format=tostring}${newline}}"
        fileName="D:/Logs/AppName/${shortdate}.log" />
    </target>
  </targets>
  <rules>
    <logger name="Raven.*" writeTo="file" minlevel="Warn" final="true" />
    <logger name="*" writeTo="file" minlevel="Debug" />
  </rules> …
Run Code Online (Sandbox Code Playgroud)

nlog

2
推荐指数
1
解决办法
1412
查看次数