小编max*_*oin的帖子

在.NET中缩小缩进的JSON字符串

我有一个缩进的JSON字符串,例如

{
  "a": 1
}
Run Code Online (Sandbox Code Playgroud)

但是,我没有要序列化或反序列化的实例类型.

在我的情况下,缩小 JSON字符串的最有效方法是什么?例如

{"a":1}
Run Code Online (Sandbox Code Playgroud)

我不介意使用库,如果它们是生产就绪的.

.net string json minify

30
推荐指数
1
解决办法
1万
查看次数

async和await关键字不会导致创建其他线程吗?

我糊涂了.一个或多个如何Task在一个线程上并行运行?我对并行性的理解显然是错误的.

MSDN的比特我无法理解:

async和await关键字不会导致创建其他线程.异步方法不需要多线程,因为异步方法不能在自己的线程上运行.该方法在当前同步上下文上运行,并仅在方法处于活动状态时在线程上使用时间.

..和:

在启动任务和等待任务之间,您可以启动其他任务.其他任务隐式并行运行,但不会创建其他线程.

c# multithreading conceptual task-parallel-library async-await

27
推荐指数
1
解决办法
3185
查看次数

停止在jQuery单击事件中传播底层ng-click

Twitter Bootstrap dropdown嵌套在一个tr.在tr通过可点击ng-click.单击页面上的任意位置将折叠下拉菜单.该行为在指令中定义$document.bind('click', closeMenu).

因此,当菜单打开,并且用户单击一行时,我希望菜单关闭(就像它一样)并且我想阻止该行上的click事件.

JSFiddle:http://jsfiddle.net/LMc2f/1/
JSFiddle +指令内联:http://jsfiddle.net/9DM8U/1/

来自ui-bootstrap-tpls-0.10.0.js的相关代码:

angular.module('ui.bootstrap.dropdownToggle', []).directive('dropdownToggle', ['$document', '$location', function ($document, $location) {
  var openElement = null,
      closeMenu   = angular.noop;
  return {
    restrict: 'CA',
    link: function(scope, element, attrs) {
      scope.$watch('$location.path', function() { closeMenu(); });
      element.parent().bind('click', function() { closeMenu(); });
      element.bind('click', function (event) {

        var elementWasOpen = (element === openElement);

        event.preventDefault();
        event.stopPropagation();

        if (!!openElement) {
          closeMenu();
        }

        if (!elementWasOpen && !element.hasClass('disabled') …
Run Code Online (Sandbox Code Playgroud)

jquery twitter-bootstrap angularjs angular-ui-bootstrap angularjs-ng-click

17
推荐指数
3
解决办法
4万
查看次数

在Message.CreateMessage中,"action"参数的含义是什么?

这是交易:

public static Message CreateMessage(
    MessageVersion version,
    MessageFault fault,
    string action)
Run Code Online (Sandbox Code Playgroud)

操作:有关如何处理消息的说明.

你们在那里放什么?" 小心处理!!! "或" 脆弱 "?它到底有什么不同吗?

.net wcf

12
推荐指数
1
解决办法
5302
查看次数

工厂根据通用类型C#创建对象

根据传递给Factory类的泛型类型来实例化对象的最有效方法是什么,例如:

public class LoggerFactory
{
    public static ILogger<T> Create<T>()
    {
        // Switch Statement?
        // Generic Dictionary?
        // EX.: if "T" is of type "string": return (ILogger<T>)new StringLogger();
    }
}
Run Code Online (Sandbox Code Playgroud)

你会怎么做?哪个分支声明?等等...

c# generics factory interface

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

使用RavenDb/Lucene进行分面搜索的分层分类?

我正在考虑RavenDb实现'高级分面搜索'场景.
我必须处理复杂的分层分类法,并在树的不同分支上共享方面,同时支持全文搜索和所有其他基本功能.

是否有任何资源使用RavenDb API记录如何执行此操作?

关于这个主题的疯狂复杂的论文:Beyond Basic Faceted Search
Solr的方式:HierarchicalFaceting

lucene faceted-search ravendb

6
推荐指数
1
解决办法
1954
查看次数

Sitecore 6.6,MVC 3和System.Web.Optimization?

Sitecore还不支持MVC 4,我想使用System.Web.Optimization的捆绑和缩小.

对捆绑包的请求以404 Not Found响应.

BundleConfig.cs:

public class BundleConfig
{
    // For more information on Bundling, visit http://go.microsoft.com/fwlink/?LinkId=254725
    public static void RegisterBundles(BundleCollection bundles)
    {
        bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                    "~/Scripts/jquery-{version}.js"));

        bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include(
                    "~/Scripts/jquery-ui-{version}.js"));

        bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                    "~/Scripts/jquery.unobtrusive*",
                    "~/Scripts/jquery.validate*"));

        // Use the development version of Modernizr to develop with and learn from. Then, when you're
        // ready for production, use the build tool at http://modernizr.com to pick only the tests you need.
        bundles.Add(new ScriptBundle("~/bundles/modernizr").Include(
                    "~/Scripts/modernizr-*"));

        bundles.Add(new StyleBundle("~/content/css").Include(
                    "~/Content/site.css",
                    "~/Content/960.gs/960.css"));

        bundles.Add(new StyleBundle("~/Content/themes/base/css").Include(
                    "~/Content/themes/base/jquery.ui.core.css",
                    "~/Content/themes/base/jquery.ui.resizable.css",
                    "~/Content/themes/base/jquery.ui.selectable.css", …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc bundle sitecore minify

6
推荐指数
1
解决办法
2228
查看次数

如何在协程之外获取 Flow 的值?

与 LiveData 类似,如何在协程之外获取 Flow 的值?

// Suspend function 'first' should be called only from a coroutine or another suspend function
flowOf(1).first()
Run Code Online (Sandbox Code Playgroud)
// value is null
flowOf(1).asLiveData().value
Run Code Online (Sandbox Code Playgroud)
// works
MutableLiveData(1).value
Run Code Online (Sandbox Code Playgroud)

语境

我避免LiveData在存储库层中使用Flow. 然而,我需要设置、观察和收集立即消费的价值。后者对于 OkHttp3 中的身份验证很有用Interceptor

android kotlin kotlin-flow

6
推荐指数
2
解决办法
6831
查看次数

反射:使用泛型参数和lambda表达式作为参数的方法

我真的无法想出这一个......

我正在尝试使用反射来实现以下结果:

_builder.Entity<Post>().HasKey(p => p.Id);
Run Code Online (Sandbox Code Playgroud)

让我介绍变量... _builder是类型DbModelBuilderPost有一个属性Id类型Guid.

在下面的代码中,contentType包装System.Type:

var config = _builder.GetType()
    .GetMethod("Entity")
    .MakeGenericMethod(contentType.Type)
    .Invoke(_builder, null);

var hasKey = config.GetType().GetMethod("HasKey");

var expressionKey = typeof(Expression<>)
    .MakeGenericType(typeof(Func<,>)
    .MakeGenericType(contentType.Type, typeof(Guid)));

var paramEx = Expression.Parameter(contentType.Type, "t");
var lambdaEx = Expression.Lambda(Expression.Property(paramEx, "Id"), paramEx);

hasKey.MakeGenericMethod(typeof(Guid))
    .Invoke(_builder, new[] { lambdaEx });
Run Code Online (Sandbox Code Playgroud)

HasKey 定义可能有帮助:

public EntityTypeConfiguration<TEntityType> HasKey<TKey>(Expression<Func<TEntityType, TKey>> keyExpression);
Run Code Online (Sandbox Code Playgroud)

...... TEntityType应该是哪种类型PostTKey类型Guid......

TargetException抛出异常类型(在上次调用Invoke时):

对象与目标类型不匹配.

我已经尝试了我能提出的每一个想法,但仍然无法匹配目标类型.

任何帮助表示赞赏.

c# generics reflection lambda entity-framework

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

Azure托管服务总线:"X.509证书CN = servicebus.windows.net不在受信任的人员商店中."

在我的vs2013开发VM上使用Azure SDK 2.3我可以轻松地使用Azure中托管的 Service Bus队列.但是,在Windows Server 2008 R2 Standard SP1上,看起来Windows无法信任所涉及的证书并引发异常.

抛出的线:

// Send the message
await queueclient.SendAsync(message);
Run Code Online (Sandbox Code Playgroud)

异常消息:

X.509证书CN = servicebus.windows.net不在受信任的人员商店中.X.509证书CN = servicebus.windows.net链建设失败.使用的证书具有无法验证的信任链.替换证书或更改certificateValidationMode.无法将证书链构建到受信任的根颁发机构.

CAPI2日志(附在下面)指向信任问题,因此我比较了两台计算机上安装的证书.服务器上不存在以下证书:

中级证书颁发机构> Microsoft Internet Authority (由Baltimore Cyber​​Trust Root发布)

中级证书颁发机构> MSIT Machine Auth CA 2 (由Microsoft Internet Authority颁发)

问题:

  1. 证书来自哪里?
  2. 为什么他们从服务器中丢失?
  3. 如何解决这个问题?

可能的路径(更新):

  1. 在服务器上安装Azure SDK 2.3 for Visual Studio 2013
  2. 在服务器上安装所有Windows更新

我试过了 :

<appSettings>
  <add key="Microsoft.ServiceBus.X509RevocationMode" value="NoCheck"/>
</appSettings>
Run Code Online (Sandbox Code Playgroud)

CAPI2验证连锁政策事件:

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-CAPI2" Guid="{5bbca4a8-b209-48dc-a8c7-b23d3e5216fb}" />
    <EventID>30</EventID>
    <Version>0</Version>
    <Level>2</Level>
    <Task>30</Task>
    <Opcode>0</Opcode>
    <Keywords>0x4000000000000001</Keywords>
    <TimeCreated SystemTime="2014-06-11T19:57:38.998656000Z" />
    <EventRecordID>5642</EventRecordID>
    <Correlation …
Run Code Online (Sandbox Code Playgroud)

c# servicebus azure x509certificate windows-server-2008-r2

3
推荐指数
1
解决办法
5982
查看次数

Azure Service Bus:通过带有内置重试策略的消息泵收到的瞬态错误(例外).为什么?

我一直在阅读2013年4月推出的事件驱动消息编程模型,OnMessageOptions.ExceptionReceived 事件,内置RetryPolicy(2013年5月,RetryPolicy.Default),瞬态故障处理应用程序块(2011)已过时等等(见下).

我一直在监视通过消息泵收到的异常错误,我每天都会收到MessagingCommunicationExceptions.此文章(更新日期:2014年9月16日),提出以下建议:

此异常表示当无法成功建立从消息传递客户端到Service Bus基础结构的连接时可能出现的通信错误.在大多数情况下,如果存在网络连接,则可以将此错误视为瞬态错误.客户端可以尝试重试导致此类异常的操作.还建议您验证域名解析服务(DNS)是否可操作,因为此错误可能表示无法解析目标主机名.

我的理解是,在版本2.1(2013)之后,没有额外的代码可用于处理服务总线上的瞬态错误.除非我的前提是错误的,为什么我每天都会收到瞬态错误?是否应忽略通过消息泵收到的异常?如果忽略,我只能假设意外的异常也会被忽略..我当然不希望这种情况发生.

Microsoft.ServiceBus的版本是2.4.0.0

同样感兴趣:从1.x的升级Windows Azure的服务总线2.0 -重试政策,介绍了Windows Azure的服务总线事件驱动的消息编程模型,是什么在Azure的SDK 2.0版本(2013年4月)的新功能,什么是新Service Bus 2.1版本(2013年5月),瞬态故障处理.

queue message-queue azure azureservicebus retrypolicy

3
推荐指数
1
解决办法
2273
查看次数

绕过授权并允许管理员访问 .NET Core 2 中的所有内容?

我想允许具有“管理员”角色的用户隐式访问每个资源。

考虑这个例子:

[Authorize(Role = "BusinessOwner")]
public class UpdateModel : PageModel
{
    public ActionResult OnPost()
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

必须明确设置角色“Admin”。将所有角色添加到 admin 用户不是一种选择,因为角色可以(读取意愿)随时间变化。

[Authorize(Role = "Admin, BusinessOwner")]
public class UpdateModel : PageModel
{
    public ActionResult OnPost()
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

不建议再创建自定义AuthorizeAttribute,那么在 .NET Core 2 中绕过授权检查并允许管理员访问的最佳实践是什么?

c# asp.net authorization asp.net-core

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