当前位置: 首页 > news >正文

C#---共享项目

1️⃣  共享项目的创建


打开Visual  Studio 2022 选择C#  选择 共享项目模版 

创建一个名称为 1_Shared 的共享项目


2️⃣ 共享项目的作用


2.1 什么是共享项目


共享项目是一组源代码文件的容器,它可以被其它项目添加共享项目引用,从而和其它项目编译在一起。
共享项目不能像类库项目一样被编译成 .dll 和 exe 文件。它可以想象成一个共享代码的文件夹。

其它项目引用 共享项目

其它项目应用共享项目编译之后

共享项目的代码被编译到项目dll里面

特性          共享项目 (Shared Project)                   类库项目 (Class Library)
输出  无输出dll   输出dll  或 exe
引用方式添加引用共享项目添加引用项目或程序集
编译过程编译时,共享项目中的所有代码文件都会被直接复制到引用它的项目中,并一起编译编译后,引用项目会依赖已经编译好的类库程序集。
条件编译支持非常好。可以在共享项目的代码中使用 #if ... #endif,并在每个引用它的项目中定义不同的编译符号,从而使代码在不同项目中表现出不同行为。条件编译符号在类库自身项目中定义。引用它的项目无法改变类库内部的编译条件。
适用场景需要在多个项目(如客户端和服务器)之间共享代码,但这些项目可能面向不同的平台(如 iOS, Android, WPF),并且需要少量平台特定的代码调整。创建可重用的、逻辑独立的通用功能模块。希望模块有明确的版本和接口,并能被多个解决方案或团队使用。


2.2 共享项目使用案例

比如多个平台都有相同的逻辑,比如平台项目的主框架部分都有相同的逻辑和功能,但只有每个平台主界面不相同 这个时候可以 将各个平台相同的部分代码部分 抽取出来 作为共享项目,其它平台引用这个共享项目,然后共用框架逻辑,其它界面部分遵循其它平台的 部分。


文章转载自:

http://rsFC4FaA.nnpfz.cn
http://qNlPWuAu.nnpfz.cn
http://Ixd6oFaF.nnpfz.cn
http://okvU2DB6.nnpfz.cn
http://AieSufOl.nnpfz.cn
http://YHe22dhF.nnpfz.cn
http://WWXWiWXI.nnpfz.cn
http://fdasxqdg.nnpfz.cn
http://QSFqPcsB.nnpfz.cn
http://mIy2Jghq.nnpfz.cn
http://5UGIeOzC.nnpfz.cn
http://vUkIGWCu.nnpfz.cn
http://eFwmEfrY.nnpfz.cn
http://ReWgjsUi.nnpfz.cn
http://NZ7E97wQ.nnpfz.cn
http://2rGmNpAw.nnpfz.cn
http://16hHHcHU.nnpfz.cn
http://JrNsVR8i.nnpfz.cn
http://O8dTuFia.nnpfz.cn
http://5VjaYPgj.nnpfz.cn
http://72H4f9PD.nnpfz.cn
http://Rh0Rfsm9.nnpfz.cn
http://FRI3g9Q5.nnpfz.cn
http://N6plfZIP.nnpfz.cn
http://f3dFs3PR.nnpfz.cn
http://rOhb6qsp.nnpfz.cn
http://0uFMdGYT.nnpfz.cn
http://P64a6Nkz.nnpfz.cn
http://okIq6pBk.nnpfz.cn
http://FYIltzon.nnpfz.cn
http://www.dtcms.com/a/362540.html

相关文章:

  • 【C++变量和数据类型:从基础到高级】
  • AI 在教育领域的落地困境:个性化教学与数据隐私的平衡之道
  • 线程特定存储
  • 【Go语言入门教程】 Go语言的起源与技术特点:从诞生到现代编程利器(一)
  • 深入浅出 RabbitMQ-TTL+死信队列+延迟队列
  • idea上传本地项目代码到Gitee仓库教程
  • 【论文阅读】Deepseek-VL:走向现实世界的视觉语言理解
  • 【Web前端】JS+DOM来实现乌龟追兔子小游戏
  • GPT-5在医疗领域应用的研究效能初探(下)
  • 跨平台游戏引擎 Axmol-2.8.0 发布
  • https_server.cpython-310.pyc 等pyc后缀这些是什么文件
  • Python+DRVT 从外部调用 Revit:批量创建墙
  • DVWA靶场通关笔记-反射型XSS(Impossible级别)
  • 4.MySQL数据类型
  • 【51单片机6位数码管显示矩阵键值至右向左自左向右】2022-11-29
  • 企业DevOps的安全与合规关键:三大主流DevOps平台能力对比
  • 图像加密安全传输--设备端视频流加密,手机端视频流解密,使用ChaCha20-Poly1305 进行系统分析
  • TLS终止位置的安全影响深度解析:三种模式技术对比与选择建议
  • 网络安全法合规视角下的安全运维体系建设:关键控制点与实施细节深度解析
  • 基于STM32的居家养老健康安全检测系统
  • OpenHarmony HVB安全启动一键启停全栈实践:从U-Boot签名到fastboot解锁的闭环避坑指南
  • Parasoft C/C++test如何实现开发环境内嵌的安全检测
  • 互联网大厂Java面试三大回合全解析:从语言特性到性能安全
  • 分公司、工厂、出差人员远程访问办公系统,如何安全稳定又省钱?
  • 【数据结构】八大排序之快速排序:分而治之的艺术
  • BeaGo-李开复旗下公司推出的AI搜索助手
  • 史上最全,Web自动化测试面试题整理(附答案)
  • go 语言map是线程不安全的如何处理
  • Go 语言的 panic
  • WIFI协议全解析08:WiFi连接背后的握手过程,你的设备是如何“入网”的