【发布时间】:2016-01-08 12:59:25
【问题描述】:
我一直在阅读有关 ReactiveUI 的内容,并且在第一个示例中遇到了问题! On the project's website,给出如下代码:
public class SearchViewModel : ISearchViewModel
{
public ReactiveList<SearchResults> SearchResults { get; set; }
private string searchQuery;
public string SearchQuery {
get { return searchQuery; }
set { this.RaiseAndSetIfChanged(ref searchQuery, value); }
}
public ReactiveCommand<List<SearchResults>> Search { get; set; }
public ISearchService SearchService { get; set; }
}
然后,
public SearchViewModel(ISearchService searchService = null) : ReactiveObject, IRoutableViewHost
{
SearchService = searchService ?? Locator.Current.GetService<ISearchService>();
... // example continues
}
但是,我无法理解第二部分使用的语法。好像一半是构造函数,一半是类定义。
这到底是什么意思?我无法编译一个简单的等效示例 - 是否有一些语言/编译器扩展在起作用?
【问题讨论】:
-
构造函数的继承链?看起来确实很奇怪?您是否错过了使这些条件成为通用 gonstraints 的任何通用参数?
-
对我来说看起来像是一个错字。似乎示例代码是他们试图突出显示的内容,因此您可能可以忽略那个奇怪的构造函数签名。
-
这不是新的 C# 6.0 默认构造函数语法吗?
-
@Daniel nope - 此功能已从 C# 6.0 中删除。见stackoverflow.com/a/26915809/1108916
标签: c# reactiveui