C# WPF实战项目升级了

2023-05-16

概述

     之前用Caliburn.Micro搭建的WPF实战项目,CM框架选用了 3.0.3,实际上CM框架目前最新版已经到4.0。173了,所有很有必须升级一下项目了. 本来打算把平台框架也直接升级到.NET 6 的,但是项目里面很多库不支持最新的平台版本,所以主要针对CM框架进行升级.

升级步骤

step1 :将packages.config迁移到 PackageReference(非必须)

这样做的好处包括精简内容与以及不再需要额外的packages.config文件

step2 :在弹出的对话框会列出顶级的依赖项和传递的依赖项,还会询问是否将后者升级到顶级依赖项,这个项目无需做任何改变,直接点击“确定”:

step3:打开Caburn.Micro.Hello.csproj,会发现少了些东西,但多了下面这段,这段就是经过精简的Nuget引用,在“管理Nuget程序包”的页面也可以看到已安装的Nuget变少了:

<ItemGroup>
    <PackageReference Include="Caliburn.Micro">
      <Version>3.0.3</Version>
    </PackageReference>
    <PackageReference Include="Common.Logging.Log4Net1213">
      <Version>3.4.1</Version>
    </PackageReference>
    <PackageReference Include="EmguCV">
      <Version>3.1.0.1</Version>
    </PackageReference>
    <PackageReference Include="Extended.Wpf.Toolkit">
      <Version>4.2.0</Version>
    </PackageReference>
    <PackageReference Include="log4net">
      <Version>2.0.3</Version>
    </PackageReference>
    <PackageReference Include="PropertyChanged.Fody">
      <Version>3.1.3</Version>
    </PackageReference>
  </ItemGroup>

step4:在更新里面全选需要升级的项目,点击更新

step5:升级完,运行项目,会看到有报错,这些主要是CM框架新版本的变更引起的,根据需求修改代码:

 

CM4.0主要变更

-. 支持的其他平台

.NET Core 3.1 WPF  、.NET 5 WPF

-. 已删除对以下平台的支持。

Silverlight 5、Windows Phone 8(Silverlight)、Windows Phone 8(Windows运行时)、Windows 8.1、.NET 4.0用于WPF。

支持的WPF的.NET最低版本是4.6.1,所有这些平台在3.x版本中仍然受支持.

-. 重大变化,以下是4.0.0版本中包含的更改。

目标平台已更改,以支持新.NET平台版本。这些措施包括:

事件聚合器

事件聚合器有一些重大的突破性更改,将其引入异步实现方法,这是4.0.0的主要原因。完整的更改可在事件聚合器迁移文档中找到。

屏幕和视图模型生命周期

所有支持视图模型生命周期的接口,如IActivate和IGuardClose,现在都支持异步实现。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# WPF实战项目升级了 的相关文章

  • 开源虚拟化集群管理平台ProxmoxVE-安装介绍以及PCI直通和嵌套虚拟化说明

    说明 xff1a 当前测试环境为PVE7 0版本 官网 xff1a Proxmox Powerful open source server solutions 目录 背景 安装系统 PCI直通配置 xff08 开启iommu xff09 允
  • qt Linux arm 交叉编译

    1 操作系统 ubuntu1 20 04 2 qt5 9 9 Index of archive qt 5 9 5 9 9 下载qt源码 qt everywhere opensource src 5 9 9 tar xz 和程序 qt ope
  • 三角函数:图像和性质关系

    紧接上一篇 xff1a http blog csdn net yinhun2012 article details 79377728 这次我们通过函数图文和unity程序来观察三角函数的图像 xff0c 首先从基本的来 xff1a 1 f
  • Linux 每天定时关机 设置

    sudo gedit etc crontab 输入密码后 xff0c 在该文件插入一行 50 02 root sbin shutdown h now 保存后 xff0c 系统会在每天02 50 自动关机
  • anaconda如何配置环境变量

    anaconda安装好后 xff0c 在cmd输入conda xff0c 显示 xff1a conda 不是内部或外部命令 xff0c 也不是可运行的程序 或批处理文件 原因是 xff1a anaconda没有配置环境变量 那接下来我就教大
  • Windows下用 Code blocks + mingw 搭建 Fortran 编译环境

    方法一 xff1a 下载页面 xff1a http www codeblocks org downloads binaries 下载 codeblocks 17 12mingw fortran setup exe 这样的版本 方法二 xff
  • 音频编码格式介绍-AAC

    目录 概述 帧格式 算法简介 开源的软件 AAC和MP3的关键性不同 参考阅读 1 概述 AAC xff08 Advanced Audio Coding xff09 xff0c 被认为是MP3的继任者 xff0c 相对MP3有更高的压缩效率
  • FFmpeg入门 - 视频播放

    音视频最好从能够直接看到东西 也更加贴近用户的播放开始学起 音视频编解码基础 我们可以通过http rtmp或者本地的视频文件去播放视频 这里的 34 视频 34 实际上指的是mp4 avi这种既有音频也有视频的文件格式 这样的视频文件可能
  • FFmpeg入门 - 格式转换

    1 音频分 plane 与打包 packed 解码出来的AVFrame 它的data字段放的是视频像素数据或者音频的PCM裸流数据 linesize字段放的是对齐后的画面行长度或者音频的分片长度 For video size in byte
  • ffmpeg播放器实现详解 - 音频播放

    1 生产者 消费者线程模型 本文主要讨论posix标准下的生产者 消费者线程模型 xff0c posix标准多用于类linux相关环境 POSIX The Portable Operating System Interface POSIX
  • 史上最全的WebRTC服务器技术选型分析

    1 前言 所以最常见的办法就是使用开源的实现 但是这里我也想给大家说一定 xff0c 用了开源的解决方案 xff0c 能快速的搭建起业务 xff0c 但是无疑也欠下了技术债 xff0c 因为开源的解决方案肯定没有自己实现的要熟悉 xff0c
  • C/C++音视频高级开发 FFmpeg编程入门

    1 播放器框架 1 1常用音视频术语 容器 xff0f 文件 xff08 Conainer File xff09 xff1a 即特定格式的多媒体文件 xff0c 比如mp4 flv mkv等 媒体流 xff08 Stream xff09 x
  • Virtualbox ArchLinux 安装

    Virtualbox ArchLinux 安装 准备工作 设置UEFI支持 网络设置 安装ArchLinux 开始安装 会以root身份进入一个虚拟控制台中 验证live环境是否正确 span class token function ls
  • conda启动、退出、切换环境时自动执行脚本(转载)

    在使用conda管理多种python环境时 xff0c 常常需要更改一些环境变量 比如conda的环境1依赖于cuda8 0 xff0c 而另一个环境2依赖cuda10 0 显然每次都手动更改是不可接受的 conda自V3 8版本之后就开始
  • ubuntu 安装多个CUDA版本并可以随时切换

    CUDA是什么就不介绍了 xff0c 直接讲怎么实现CUDA多版本的共存和实时切换 1 安装多个版本的CUDA 这里 xff0c 我们以cuda9 1版本和cuda9 0版本为例 xff08 先安装哪个无所谓 xff09 首先 xff0c
  • Copilot使用教程:让AI助手提升你的编程效率

    OpenAI推出的Copilot是一个基于GPT 4的代码生成器 xff0c 它可以帮助你在编写代码时给出智能建议 xff0c 从而提高你的编程效率 文章目录 什么是CopilotCopilot的安装与配置Copilot的基本功能Copil
  • Ubuntu16.04下anaconda3安装;Anaconda基本命令使用;装anaconda后终端有base解决方法

    1 安装 进入Anaconda https www anaconda com distribution 下载完成后 xff0c 有一个Anaconda3 2019 07 Linux x86 64 sh这样的文件 安装 bash Anacon
  • UITableViewCell高度自适应

    第一步 xff1a 设置UITableViewCell的高度自适应属性 xff0c table estimatedRowHeight 61 260 0f table rowHeight 61 UITableViewAutomaticDime
  • boost编译

    使用b2 help可以查看详细帮助信息 常用 xff1a b2 stage stagedir 61 lt xxx gt build type 61 complete minimal build dir 61 lt xxx gt with l
  • ubuntu linux 下载安装anaconda+配置环境变量

    下载安装anaconda 1 去官网下载anaconda xff08 Anaconda Anaconda DistributionAnaconda Anaconda DistributionAnaconda Anaconda Distrib

随机推荐

  • 如何打开Cookies网页

    cookies xff0c 是小型文本文件 xff0c 用于某些网站辨别用户身份追踪存储在用户本地终端上的数据 xff0c 有用户客户端暂时或永久保存 xff0c 这些文件给用户带来了方便 xff0c 不用烦于记住用户名和密码 xff0c
  • C/C++产生随机数

    C C 43 43 中产生随机数要用到的是rand 函数 xff0c srand 函数 1 如果你只要产生随机数而不需要设定范围的话 xff0c 你只要用rand 就可以了 xff1a rand 会返回一随机数值 范围在0至RAND MAX
  • 【angular】Can't bind to 'ngModel' since it isn't a known property of 'select'.

    最近做前端的时候 xff0c 经常会遇到Can 39 t bind to 39 39 since it isn 39 t a known property of 39 39 比如今天想在 lt select gt 上加一个双向绑定 xff0
  • 如何将旧电脑的数据传输到新电脑?

    小编最近换了台新电脑 xff0c 需要将旧电脑的文件都转移过去 xff0c 但是旧电脑上大文件不少 xff0c 不管是上传到网盘再下载 xff0c 还是通过QQ或微信在线传输 xff0c 速度都很慢 xff0c 且步骤太复杂 相信很多小伙伴
  • 如何恢复mac删除的文件夹?

    不小心删除了Macbook Pro上的整个系列文件夹 xff0c 将文件夹拖到垃圾箱文件夹然后清空它 xff0c 该文件夹上有许多珍贵的家庭视频和图片 有没有什么办法可以恢复该文件夹呢 xff1f 如果使用Time Machine备份了文件
  • macbook文件误删怎么恢复

    因为外形美观 xff0c 质地轻薄 xff0c 性能优越等原因 xff0c MacBook被很多用户用作工作笔记本 xff0c 方便随身携带办公 用户的MacBook一般都存储了大量的重要数据 xff0c 如果数据丢失肯定会给用户带来很大的
  • IOS开发基础篇--CAShapeLayer的strokeStart和strokeEnd属性

    一 案例演示 最近有一个小需求 xff0c 就是要做一个圆形进度条 xff0c 大概样子如下 xff1a 在不知道有CAShapeLayer的strokeStart和strokeEnd属性的时候 xff0c 我采取的方法就是实时的 移除旧的
  • 求n个数的最大值、最小值、平均值 (15 分)

    从键盘输入n xff08 3 lt 61 n lt 61 20 xff09 个整数 xff0c 求出这n个数的最大值 最小值 平均值 xff08 平均值保留2位小数 xff09 输入格式 在第一行输入一个介于3至20之间的整数n xff0c
  • Pandas数据处理/drop_duplicates()/映射map()/replace()/rename()/分箱/过滤异常值/随机抽样take()/random.permutation()

    1 删除重复元素 使用duplicated 函数检测重复的行 xff0c 返回元素为布尔类型的Series对象 xff0c 每个元素对应一行 xff0c 如果该行不是第一次出现 xff0c 则元素为True import numpy as
  • libjpeg的移植

    libjpeg是什么东西 xff1f libjpeg是一个开源源码包 xff0c 功能是图片格式之间的相互转换 compress decompress 移植步骤 xff1a xff11 解压源码 不要解压到共享目录中去 xff0c 共享文件
  • TCP实现服务器与单客户端连接(多线程)

    局域网内实现单客户端与服务器通信 客户端通过配置ip和端口号来连接服务器 客户端和服务器端各自具有发送和接收线程 可以实现一方持续发送 服务器端 package Net import java io IOException import j
  • python练习题(四十二):809*??=800*??+9*?? 其中??代表两位数, 809*??为四位数,8*??为两位数,9*??为3位数。求??代表的两位数,及809*??后的结果?

    span class token comment 题目 xff1a span span class token comment 809 61 800 43 9 其中 代表一个两位数 span span class token comment
  • Android 利用V4L2 调用camera

    为何要使用V4L2进行开发 出于安全原因 xff0c 使用Android 原生的Camera接口 xff0c 必须要使用可见的surface显示摄像头的preview图像 xff0c 即必须要让用户看到你的应用正在使用摄像头 另外Andro
  • MySql 8.0 设置允许远程登录授权

    MySQL 连接出现 is not allowed to connect to this MySQL Server错误提示 打开 MySQL8 0 Command Line Client 1 打开远程连接 mysql span class
  • 基于Jeecg的权限获取

    Jeecg的权限 xff0c 是通过菜单管理中的 按钮 权限 实现的 xff0c 前端和后端怎么获取这个权限呢 xff0c 本文简单做个记录 1 前端 import USER AUTH from 34 64 store mutation t
  • 基于Jeecg使用vue-konva

    konva是一个基于canvas的可视化框架 xff08 https konvajs org xff09 xff0c vue konva则是基于vue的 当前的一个小项目是基于Jeecg开发的 xff0c 想做可视化的功能 xff0c 于是
  • 基于JeecgBoot的v-has权限控制

    v has是一个很方便的前端权限控制标签 xff0c 但是只支持一个授权标识 xff0c 如果需要两个或以上的权限与或运算就不支持了 解决方案 xff1a 修改文件 64 utils hasPermission js 中的方法filterG
  • 前后端离线开发相关软件下载地址大全

    一 后端开发 xff1a 1 IDEA Windows xff1a https www jetbrains com zh cn idea download section 61 windows 2 JDK Windows xff1a htt
  • 离线部署GitLab

    一 背景 公司是局域网开发环境 xff0c 资源文件用svn管理 xff0c 代码用git管理 GitLab有点大 xff0c 而且只能在Linux下使用 xff0c 所以选择了轻巧的GitBlit 后来GitBlit被暴漏洞 xff0c
  • C# WPF实战项目升级了

    概述 之前用Caliburn Micro搭建的WPF实战项目 xff0c CM框架选用了 3 0 3 xff0c 实际上CM框架目前最新版已经到4 0 173了 xff0c 所有很有必须升级一下项目了 本来打算把平台框架也直接升级到 NET