小编All*_*ech的帖子

调用异步方法在viewmodel的构造函数中加载数据有一个警告

我的视图包含一个ListView,它显示来自互联网的一些数据,我创建了一个异步方法来加载数据并在我的viewmodel的构造函数中调用该方法.它有一个警告提示我现在使用await关键字.

在构造函数中异步加载数据的任何其他解决方案?

.net c# wpf asynchronous async-await

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

运行时AOP与编译时AOP

这两种AOP框架的优点和缺点是什么?我正在使用Unity作为我的aop框架,但是我认为诸如postharp之类的编译时aop框架可能比运行时aop框架具有更好的性能?它看起来像运行时aop框架使用反射来实现注入.

architecture aop

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

将HttpClientHandler传递给HttpClient时调用哪个SendAsync方法

定义请求的大多数属性都是定义的HttpClientHandler,这个类是这样定义的类的子HttpMessageHandler类:

public abstract class HttpMessageHandler : IDisposable
{
  protected internal abstract Task<HttpResponseMessage> SendAsync
    (HttpRequestMessage request, CancellationToken cancellationToken);
  public void Dispose();
  protected virtual void Dispose (bool disposing);
}
Run Code Online (Sandbox Code Playgroud)

书中<C#5.0 in a nutshell>说,SendAsync在方法HttpMessageHandler时,我们称之为叫HttpClient的SendAsync方法.但是HttpClient该类还定义了一个SendAsync方法,当我们呼吁的一个实例这种方法HttpClient,这SendAsync是叫什么?

c# httpclient .net-4.5

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

如何获取Visual Studio当前使用的颜色主题

我正在创建自己的IntelliSense Presenter,因为Visual Studio2012支持更改主题,所以我希望在更改主题时可以自动更改演示者的背景颜色.有没有办法跟踪主题更改事件,或获取Visual Studio的当前颜色主题?

intellisense visual-studio-extensions visual-studio-2012

8
推荐指数
3
解决办法
1699
查看次数

如何将动态json加载到jquery数据表

我想将动态数据加载到我的jquery数据表中.这意味着,在我从服务器获取json数据之前,我不知道它包含哪些字段,但我确定json是有效的.它看起来像下面,

"data": [
{
  "first_name": "Airi",
  "last_name": "Satou",
  "position": "Accountant",
  "office": "Tokyo",
  "start_date": "28th Nov 08",
  "salary": "$162,700"
},
{
  "first_name": "Angelica",
  "last_name": "Ramos",
  "position": "Chief Executive Officer (CEO)",
  "office": "London",
  "start_date": "9th Oct 09",
  "salary": "$1,200,000"
}
Run Code Online (Sandbox Code Playgroud)

]

有时,它可能只包含'first_name'和'last_name'.

我搜索了很长时间,所有样本都指定了'aoColumnsDef'或'aoColumns'.但我不知道确切的文件.有没有办法使用json中的字段名称作为表的标题和字段值作为表的主体来填充jquery数据表?例如,json数据只包含两个字段'first_name'和'last_name',该表应包含两列'first_name'和'last_name'.如果json包含3个字段,则表应显示3列.我确定"数据"中的所有项目都具有相同的字段.

提前致谢!

javascript jquery json jquery-plugins datatables

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

如何在kendo列模板中为元素设置弹出位置的锚点

我使用kenod UI来创建我的Web UI.我有一个列模板,如下所示

var template = "<input id='details-button' type='image' src='images/detail_button.png' ng-click='showDetals(this.dataItem)'/>#: Contact #";
Run Code Online (Sandbox Code Playgroud)

我想在每次单击详细信息按钮时弹出一个窗口,弹出窗口的位置应该在我单击的按钮的右下角.这就是我现在所做的

var popup = $("#detailsPopup");
popup.kendoPopup({
     anchor: "#details-button",
     origin: "bottom right",
});
Run Code Online (Sandbox Code Playgroud)

但它不起作用.每次,弹出窗口显示在第一行按钮的右下角,而不是我点击的按钮的右下角.

检查生成的html,所有按钮的id都相同(详细信息按钮).因此弹出窗口始终显示与第一个详细信息按钮相关.

更新:

这是我改变的解决方案,但仍然无效.

function popupDetails(item) {
            detailsGrid.kendoGrid({
                columns: ...,
                dataSource: item.Details
            });

            var anchor = "#details-button" + item.id;
            var popup = $("#details-popup");
            popupp.kendoPopup({
                anchor: anchor,
                origin: "bottom right",
            });
            
            popup.data("kendoPopup").open();
        }
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

javascript jquery kendo-ui kendo-grid

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

如何使用Windows搜索API将文件夹添加到Windows索引列表中

在索引选项中,"索引这些位置"中有一个位置列表,有没有办法通过c#将从我的应用程序创建的文件夹添加到列表中?

c# windows-search

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

本地html中的图像无法加载到windows8中的webview中

我想将本地文件夹中的本地html文件加载到webview,但是WebView不支持'ms-aspx:///'protocal,我找到了一个解决方案来读取要传输的html文件,然后将其转换为字符串,使用NavigateToString方法加载html,效果很好.但是,如果html文件中有图像,图像无法显示,任何人都可以提供帮助?

html webview windows-8

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

如何在asp.net核心剃刀页面中实现分页

我正在用ef学习asp.net核心剃刀页面.我想用我的表实现分页,我已经查看了本教程

https://docs.microsoft.com/en-us/aspnet/core/data/ef-rp/sort-filter-page?view=aspnetcore-2.1

但它只支持pre和next,我已经研究了很长时间,所有的解决方案都与asp.net核心mvc有关,但我使用的是razor页面,我的项目中没有控制器,有什么想法可以实现?

这就是我想要实现的效果

在此输入图像描述

 <form method="get" asp-page="./Index">
                <nav aria-label="Page navigation">
                    <ul class="pagination">
                        <li>
                            <a href="#" aria-label="Previous">
                                <span aria-hidden="true">&laquo;</span>
                            </a>
                        </li>
                        @{
                            var totalPages = Model.Products.Count % 2 == 0 ? Model.Products.Count / 2 : Model.Products.Count / 2 + 1;
                        }
                        @for (int i = 1; i <= totalPages; i++)
                        {
                            <li><a asp-page="./Index" asp-route-id="@i">@i</a></li>
                        }
                        <li>
                            <a href="#" aria-label="Next">
                                <span aria-hidden="true">&raquo;</span>
                            </a>
                        </li>
                    </ul>
                </nav>
            </form>
Run Code Online (Sandbox Code Playgroud)

cshtml.cs

  public async Task OnGetAsync(string sortOrder, string searchString, string shopString, string statusString, int page)
        {}
Run Code Online (Sandbox Code Playgroud)

c# razor asp.net-core

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

为什么调用方法和异步方法具有相同的线程ID

请参考下面的代码.

public MainViewModel()
    {
        LongRunningOperationCommand = new RelayCommand(ExecuteLongRunningOperationCommand);
    }

    private void ExecuteLongRunningOperationCommand()
    {
        Test();
    }

    private async Task Test()
    {
        Log += "Command begin: " + DateTime.Now + "\r\n";
        Log += "Command thread: " + Thread.CurrentThread.ManagedThreadId + "\r\n";
        var getStringAsync = GetStringAsync();
        Log += "Work in Command...\r\n";
        Log += "Work in Command which not related to the result of async method will complete: " + DateTime.Now + "\r\n";
        Log += "Work in Command which not related to the result of …
Run Code Online (Sandbox Code Playgroud)

c# wpf multithreading asynchronous async-await

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

await语句后的代码未运行

我知道论坛里有很多类似的问题,但我没有找到和我一样的问题.请看下面的代码.

public class MainViewModel
    {
        public MainViewModel()
        {
            Test();

        }

        async Task<string> Test()
        {
            var v = await TaskCaller();
            return v;
        }

        Task<string> TestTask()
        {
            new Task<string>(() =>
            {
                Thread.Sleep(2000);
                return "TestTask";
            });
            return null;
        }

        Task<string> TaskCaller()
        {
            var task = new Task<string>(() =>
            {
                return TestTask().Result;
            });

            return task;
        }
    }
Run Code Online (Sandbox Code Playgroud)

永远不会达到return v语句.我需要TaskCaller的结果来做更多的过程.

c# wpf asynchronous async-await

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

如何从大视图模型中分离命令

我的viewmodel包含很多命令,它使我的viewmodel非常大.我想从viewmodel中分离出我的命令.目前,我的解决方案是为每个命令创建一个类,如下所示,

 public class TestCommand : CommandBase
{
    private MainViewModel vm;

    public TestCommand(MainViewModel vm)
    {
        this.vm = vm;
    }

    public override bool CanExecute(object parameter)
    {
        return true;
    }

    public override void ExecuteCommand(object parameter)
    {
        vm.logger.log(...);
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

由于我需要在ViewModel中使用某些方法或属性,因此我必须将viewmodel作为参数传递给命令.对于这个解决方案,有两个缺点:1.项目中有很多命令文件,如果一个视图中命令的平均计数为15,则10个视图将在项目中有150个命令文件; 2.将ViewModel作为参数传递给命令需要一些属于私有的属性或方法必须更改为public; 将viewmodel传递给命令也很奇怪.

有没有其他解决方案来分离命令?

c# architecture wpf mvvm

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