小编Bra*_*non的帖子

如何组合Expression <Func <MyClass,bool >> []?

我有一个数组

Expression<Func<MyClass,bool>>
Run Code Online (Sandbox Code Playgroud)

但是,我希望将它们全部组合在一起以获得该类型的单个项目.我该怎么做呢?我可以投射Expression.And的结果吗?

c# linq expression-trees

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

使用RX在不同时间触发事件?

我有一大堆简单的对类:

public class Pair { public DateTime Timestamp; public double Value; }
Run Code Online (Sandbox Code Playgroud)

它们按升序时间戳排序.我想在适当的时间为列表中的每个项触发一个带有Value(例如,Action <double>)的事件.时间是过去的,所以我需要规范化时间戳,使列表中的第一个是"现在".我们可以使用Reactive Extensions设置它,以便在两个项目之间的时间差异之后触发下一个事件吗?

c# multithreading system.reactive

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

IClientProxy.SendAsync 的可能异常(来自 Microsoft.AspNetCore.SignalR)

在 SignalR v2 中,我使用这样的代码(如下)来处理连接失败时发生的异常。SignalR v3 中的等价物是什么?难道SendAsyncSendAsyncCore抛出一些异常应连接失败或序列号的失败?

private async void ManagerOnUserRemoved(UserDto userDto)
{
    try
    {
        await Context.Clients.All.MyFunc(userDto);
    }
    catch (InvalidOperationException) { }
    catch (AggregateException) { }
}
Run Code Online (Sandbox Code Playgroud)

我没有看到这里列出的任何异常:https : //docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.signalr.client.hubconnectionextensions.sendasync?view=aspnetcore-3.0

更新:我对来自客户端(到InvokeCoreAsync等人)的调用有同样的问题。

c# asp.net-core asp.net-core-signalr

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

ListBox知道它在一些遥远的ScrollViewer中吗?

下面的代码是问题的完整表示.基本上,当我在ScrollViewer中有一个ListBox时,ListBox将不会显示自己的滚动条.相反,它依赖于父ScrollViewer的滚动条.在我的情况下,我将整个控件包装在ScrollViewer中,以便在违反MinHeight/MinWidth时获取滚动条.ListBox只是我的UserControl中的众多控件之一,我不希望我的UserControl跳转到大比例以匹配ListBox中的项目.你会在下面的代码中添加什么来强制ListBox使用自己的滚动条?

using System;
using System.Windows;
using System.Windows.Controls;

namespace TestExpanderWidth
{
    class Program
    {
        [STAThread]
        static void Main()
        {
            var listbox = new ListBox { Margin = new Thickness(10.0), MinWidth = 400 };
            listbox.Items.Add(new string('c', 3000));

            var sv = new ScrollViewer {HorizontalScrollBarVisibility = ScrollBarVisibility.Auto, VerticalScrollBarVisibility = ScrollBarVisibility.Auto};
            sv.Content = listbox; // remove for test

            var window = new Window { Width = 600, Height = 400 };
            window.Content = sv; // remove for test
            //window.Content = listbox; // add for test …
Run Code Online (Sandbox Code Playgroud)

c# wpf layout listbox scrollviewer

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

用401理解基本认证

我对Web浏览器的基本身份验证有点困惑.我原以为Web浏览器只会在上一个响应中收到HTTP 401状态后发送Authorization标头.但是,Chrome似乎会随后向每个请求发送Authorization标头.它有一次我输入的数据,以响应我网站上的401,并随每条消息一起发送(根据Chrome和我的网络服务器附带的开发人员工具).这是预期的行为吗?是否有一些标题我应该用我的401来推断授权的东西不应该被缓存?我目前正在使用WWW-Authenticate标头.

iis basic-authentication http-headers wcf-data-services http-status-code-401

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

可以小巧的取代表名吗?

我原本以为dapper-dot-net可以在这样的查询中替换表名:

connection.Query("SELECT * FROM @Table WHERE [Id] = @Id", new {Table = tb, Id = id});
Run Code Online (Sandbox Code Playgroud)

但是,它似乎不会取代表名.这是预期的限制吗?

c# dapper

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

sqlite shell报告CPU时间:单位是多少?

使用Sqlite shell时,.timer on我得到控制台打印,如"CPU Time:user 0.062400 sys 0.015600".如何将其转换为毫秒?是否有其他方法可以在Sqlite shell中以毫秒为单位测量总查询时间?

sqlite shell

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