鉴于您不依赖于任何主要的某些MVVM框架的功能,我认为这主要取决于选择F#而不是C#(如果进行比较的话)。然而,当前的F#编译器在VM代码中缺少一个有用的特性 -- 对CallerMemberName属性的支持,这对于INPC对象属性很好用。但是,相对于您获得的好处(例如F#中的所有酷炫功能),这可能只是一个小缺点。由于VM通常涉及将M数据转换和处理以在V中使用,因此我还没有看到为什么F#会不适合。