这个半类/半构造函数c#语法对于reactiveui的意义是什么?
我一直在阅读关于ReactiveUI的文章,在第一个示例中遇到了一个问题,给出了以下代码:这个半类/半构造函数c#语法对于reactiveui的意义是什么?,c#,reactiveui,C#,Reactiveui,我一直在阅读关于ReactiveUI的文章,在第一个示例中遇到了一个问题,给出了以下代码: public class SearchViewModel : ISearchViewModel { public ReactiveList<SearchResults> SearchResults { get; set; } private string searchQuery; public string SearchQuery { get { re
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; }
}
公共类SearchViewModel:ISearchViewModel
{
公共反应列表搜索结果{get;set;}
私有字符串查询;
公共字符串搜索查询{
获取{return searchQuery;}
设置{this.RaiseAndSetIfChanged(ref searchQuery,value);}
}
公共反应命令搜索{get;set;}
公共ISearchService搜索服务{get;set;}
}
然后呢,
public SearchViewModel(ISearchService searchService = null) : ReactiveObject, IRoutableViewHost
{
SearchService = searchService ?? Locator.Current.GetService<ISearchService>();
... // example continues
}
publicsearchViewModel(ISearchService searchService=null):反应对象,IRoutableViewHost
{
SearchService=SearchService??Locator.Current.GetService();
…//示例继续
}
但是,我无法理解第二部分使用的语法。它似乎是半个构造函数,半个类定义
这到底是什么意思?我无法进行简单、等效的示例编译-是否有一些语言/编译器扩展在工作?这是一个错误/输入错误。语法不正确。我刚刚提交了一个.构造函数的继承链?看起来真的很奇怪?您是否错过了将这些条件转换为通用gonstraint的任何通用参数?在我看来,这似乎是一个输入错误。似乎示例代码正是他们想要强调的,因此您可能可以忽略这个奇怪的构造函数签名。这不是新的C#6.0默认构造函数语法吗?@Daniel nope-此功能已从C#6.0中删除。请看是的拼写错误,已经合并了公关。对于任何混乱,我深表歉意。