.NET Standard是.NET APIs的正式规范,可在多个.NET实现中使用。.NET Standard的动机是为了在.NET生态系统中建立更大的统一性。.NET 5及更高版本采用了不同的方法来建立统一性,这种方法消除了大多数情况下对.NET Standard的需求。但是,如果您想要在.NET Framework和任何其他.NET实现(例如.NET Core)之间共享代码,则您的库应该针对.NET Standard 2.0。不会发布新版本的.NET Standard,但.NET 5、.NET 6和所有未来版本将继续支持.NET Standard 2.1及更早版本。

Framework 中具体使用Toolkit.Mvvm

c#版本不能低于 8.0

直接改成 10.0

添加建的类库(.NET Standard)应用

具体使用

//UseMvvmToolkitFramework项目里引入.NET Standard项目里viewmodel数据
//UseMvvmToolkitFramework.cs
this.DataContext = new ViewModel();
//前台进行资源引入及数据绑定
xmlns:mvvm="clr-namespace:UseMvvmTookitFramwork.Mvvm;assembly=UseMvvmTookitFramwork.Mvvm"
d:DataContext="{d:DesignInstance mvvm:ViewModel}"
<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center" TextElement.FontSize="32">
<TextBox Width="200" Text="{Binding Message}" />
<Separator Margin="0,5" />
<Button Padding="10,0" HorizontalAlignment="Center"Command="{Binding ClickCommand}" Content="Click" />
</StackPanel> //UseMvvmTookitFramwork.Mvvm中view model数据
public partial class ViewModel : ObservableObject {
[ObservableProperty]
string message = "Hello world"; [RelayCommand]
void Click() {
Message = "Goodbye";
}
}

第二种方式

对Framework 项目升级(升级.csproj 文件)

https://learn.microsoft.com/en-us/dotnet/core/porting/upgrade-assistant-winforms-framework

总结:

  • .NET Standard c#不能低于 8.0
  • Framework 里的项目将 view model 摘出来放置到.NET Standard 项目里
  • 将.NET Standard 项目添加到Framework 项目引用里(主要借助 standard 里面的生成器)
  • 不管哪种方式主要是能使用 toolkit.mvvm 中的生成器

Framework 中使用 Toolkit.Mvvm 的生成器功能的更多相关文章

  1. 减小ipa体积之删除frameWork中无用mach-O文件

    最近项目末期, 我们团队为了ipa的大小使用不少的体积减小的方法, 除了一些常规的方法之外, 我分享一下自己研究出来的新思路. 首先我们来简单的介绍一下mach-O. 什么是mach-O? Mach- ...

  2. Spring Framework------>version4.3.5.RELAESE----->Reference Documentation学习心得----->Spring Framework中的spring web MVC模块

    spring framework中的spring web MVC模块 1.概述 spring web mvc是spring框架中的一个模块 spring web mvc实现了web的MVC架构模式,可 ...

  3. Spring Framework------>version4.3.5.RELAESE----->Reference Documentation学习心得----->Spring Framework中web相关的知识(概述)

    Spring Framework中web相关的知识 1.概述: 参考资料:官网documentation中第22小节内容 关于spring web mvc:  spring framework中拥有自 ...

  4. .NET Framework 中的字符编码

    字符是可用多种不同方式表示的抽象实体. 字符编码是一种为受支持字符集中的每个字符进行配对的系统,配对时使用的是表示该字符的某些值. 例如,摩尔斯电码是一种为罗马字母表中的每个字符进行配对的字符编码,配 ...

  5. Show 一下最新的动态属性扩展功能与键值生成器功能

    Show 一下最新的动态属性扩展功能与键值生成器功能 YbSoftwareFactory 各种插件的基础类库中又新增了两个方便易用的功能:动态属性扩展与键值生成器,本章将分别介绍这两个非常方便的组件. ...

  6. ES6中的迭代器(Iterator)和生成器(Generator)

    前面的话 用循环语句迭代数据时,必须要初始化一个变量来记录每一次迭代在数据集合中的位置,而在许多编程语言中,已经开始通过程序化的方式用迭代器对象返回迭代过程中集合的每一个元素 迭代器的使用可以极大地简 ...

  7. 如何处理Entity Framework中的DbUpdateConcurrencyException异常

    1. Concurrency的作用 场景 有个修改用户的页面功能,我们有一条数据User, ID是1的这个User的年龄是20, 性别是female(数据库中的原始数据) 正确的该User的年龄是25 ...

  8. Android Framework中的线程Thread及它的threadLoop方法

    当初跟踪Camera的代码中的时候一直追到了HAL层,而在Framework中的代码看见了许很多多的Thread.它们普遍的特点就是有一个threadLoop方法.依照字面的意思应该是这个线程能够循环 ...

  9. iOS在framework中使用CoreData出现崩溃问题及解决方法

    公司项目中有一个功能,保存授权令牌数据.最开始只有一条数据,所以就直接保存在了userdefaults中.后来需要两条数据,还是保存在userdefaults中,其中一条为固定的,另一条不固定可以进行 ...

  10. .NET Core 和 .NET Framework 中的 MEF2

    MEF,Managed Extensibility Framework,现在已经发布了三个版本了,它们是 MEF 和 MEF2. 等等!3 去哪儿了?本文将教大家完成基于 MEF2 的开发.   ME ...

随机推荐

  1. 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(12)-Charles如何使用Repeat功能进行简单压力测试

    1.前言 李四:"今天好累啊,点的我手指都疼了.我一直被要求给后端接口的同事重复发送请求来调试接口." Charles:"哎呀,李四同学,你怎么能一条一条的手动发送呢 我 ...

  2. Go - 高并发抢到红包实现

    // utils.gopackage mainimport ( "fmt" "math/rand" "sync" "time&qu ...

  3. 字符串常见API(charCodeAt\fromCharCode)

    1.myStr.charCodeAt(num) 返回指定位置的字符的Unicode(是字符编码的一种模式)编码. 2.String.fromCharCode() String的意思就是不能用自己定义的 ...

  4. keyclaok~keycloak存到cookie中的值和session_state

    keycloak存到cookie中的值 AUTH_SESSION_ID KEYCLOAK_IDENTITY KEYCLOAK_SESSION AUTH_SESSION_ID 用户的当前session_ ...

  5. webrtc QOS笔记二 音频buffer数据不足生成很多gap的问题

    webrtc QOS笔记二 音频buffer数据不足生成很多gap的问题 目录 webrtc QOS笔记二 音频buffer数据不足生成很多gap的问题 记录个iusse. 插入音频数据后,GetAu ...

  6. win32api中文在线文档

    中文文档http://www.yfvb.com/help/win32sdk/ 英文手册https://www.jb51.net/books/724576.html

  7. [软件过程/软件生命周期模型]软件过程的工具链&技术链【待续】

    0 宣言:DevOps & RUP统一过程建模 1 项目管理 (需求管理 / 缺陷管理 / ...) 禅道(前身:bugfree) [在线协作] JIRA(项目与事务跟踪工具) 与禅道类同,但 ...

  8. 开源Apinto网关-流量策略

    背景介绍 Apinto是一款高性能.可扩展.易维护的API网关. Apinto网关基于GO语言模块化开发,5分钟极速部署,配置简单.易于维护,支持集群与动态扩容,企业级开箱即用.Apinto除了提供丰 ...

  9. 活字格性能优化技巧(3):如何巧用CDN提升含页面的访问速度

    本文由葡萄城技术团队于博客园原创并首发转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 上两篇中我们分享了如何利用数据库主键和表格设置默认不加载数据来提升应用 ...

  10. 在IIS 搭建FTP站点

    最近在项目中需要用到FTP,需要将生成的文件通过FTP上传网站. 在此记录下. FTP SSL设置,需要允许SSL连接. FTP 身份验证,匿名身份验证需要启用. FTP 授权规则,如果没有特殊情况允 ...