Caliburn.Micro对MVVM目录结构的要求判定规则是如下正则表达式:
(?<nsbefore>([A-Za-z_]\w*\.)*)(?<subns>ViewModels\.)(?<nsafter>([A-Za-z_]\w*\.)*)(?<basename>[A-Za-z_]\w*)(?<suffix>PageViewModel)$
(?<origns>\.)(?<basename>[A-Za-z_]\w*)(?<suffix>PageViewModel)$
(?<nsbefore>([A-Za-z_]\w*\.)*)(?<subns>ViewModels\.)(?<nsafter>([A-Za-z_]\w*\.)*)(?<basename>[A-Za-z_]\w*)(?<suffix>ViewModel)$
(?<origns>\.)(?<basename>[A-Za-z_]\w*)(?<suffix>ViewModel)$
我项目上使用的正确规则是:
*.UI.Views.GraphDesginView
*.UI.ViewModels.GraphDesginViewModel
以下方法是错误的:
*.UI.View.GraphDesginView
*.UI.ViewModel.GraphDesginViewModel