小编Mar*_*hke的帖子

如何从rx subscribe回调异步函数?

我想在Rx订阅中回调一个异步函数.

就像这样:

public class Consumer
{
    private readonly Service _service = new Service();

    public ReplaySubject<string> Results = new ReplaySubject<string>();

    public void Trigger()
    {
        Observable.Timer(TimeSpan.FromMilliseconds(100)).Subscribe(async _ => await RunAsync());
    }

    public Task RunAsync()
    {
        return _service.DoAsync();
    }
}

public class Service
{
    public async Task<string> DoAsync()
    {
        return await Task.Run(() => Do());
    }

    private static string Do()
    {
        Thread.Sleep(TimeSpan.FromMilliseconds(200));
        throw new ArgumentException("invalid!");
        return "foobar";
    }
}

[Test]
public async Task Test()
{
    var sut = new Consumer();
    sut.Trigger();
    var result = …
Run Code Online (Sandbox Code Playgroud)

c# asynchronous reactive-programming system.reactive

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

nuget .props和.targets文件应该是源代码库的一部分吗?

这些文件是在包恢复期间创建的,这就是为什么我认为它们不必在存储库中.是否有进一步的文件说明这些文件的目的可能有助于回答这个问题?

restore package visual-studio nuget

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

如何获取outlook联系人的头像?

我正在尝试获取联系人的头像图像。

using Microsoft.Office.Interop.Outlook;

public sealed class OutlookAvatarFetcher
{
    private static void FetchAvatars()
    {
        var outlook = new Application();
        var folder = outlook.GetNamespace("MAPI").GetDefaultFolder(OlDefaultFolders.olFolderContacts);
        var items = folder.Items;

        for (var i = 0; i < items.Count; ++i)
        {
            var contact = items[i + 1] as ContactItem;
            if (contact == null)
                continue;


            if (contact.HasPicture)
            {
                // TODO store the picture somehow.
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但不幸的是我找不到图片访问器。

.net c# mapi outlook interop

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

如何使用 Rx 观察下降沿?

我有一个像这样的输入序列8, 7, 6, 5, 4, 3, 2, 1, 0, 5, 4, 3, 2, 1, 0, 4。结果应该显示的是0, 0

是的,这很容易。0, 0但当输入仅为 时,我不希望结果为0, 0

这里的问题是,它应该只0在前一个值大于零时才发布。

c# system.reactive

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