- 博客(76)
- 资源 (9)
- 收藏
- 关注
原创 MEF [ImportMany]
然后,创建一个 CompositionContainer 并使用它来解析 Host 类中的导入。在C#中,Managed Extensibility Framework (MEF) 是一个轻量级的扩展性框架,它允许开发者以解耦的方式创建可扩展的应用程序。当使用 [ImportMany] 时,MEF 会查找所有与指定契约匹配的导出(export),并将它们注入到一个集合中。注意每个类上的 [Export(typeof(IPlugin))] 特性,它告诉 MEF 这些类可以作为 IPlugin 契约的导出。
2024-04-12 09:35:56 292
原创 详细需求的拆解
详细需求的拆解是软件开发过程中的关键步骤,它有助于将复杂的需求分解为更具体、更易于管理的部分。通过综合运用这些方法,可以将复杂的详细需求拆解为更具体、更易于管理的部分,为后续的软件开发工作提供有力的支持。
2024-04-02 10:02:57 249
原创 需求规格说明书
需求规格说明书(Requirements Specification Document,简称RSD)是软件开发过程中的重要文档,用于详细描述软件系统的功能需求、性能需求、约束条件等非技术细节。在编写需求规格说明书时,应根据项目的实际情况和需求进行调整和补充,确保文档内容的准确性和完整性。同时,需求规格说明书应经过相关人员的评审和确认,以确保各方对需求的理解一致。
2024-04-02 09:52:44 283
原创 linux 的.bashrc .bash_profile .profile分别作用
总结来说,这三个文件都是用于配置用户环境的,但它们的执行时机和范围有所不同。.bashrc主要用于配置交互式shell环境,而.bash_profile和.profile则更侧重于登录时的环境配置。在实际使用中,用户可以根据自己的需求修改这些文件,以定制个性化的shell环境。文件都是用于配置用户环境的,但它们各自的作用和执行顺序有所不同。在Linux系统中,
2024-03-15 10:13:18 574
原创 树莓派5 GPIO Wiringpi不支持,使用gpiod控制IO(已解决)
买了树莓派5才知道,Wiringpi不支持树莓派5了, Wiringpi官方好像不更新了。
2024-02-03 11:30:31 602
原创 程序员必备的面试技巧
程序员必备的面试技巧,就像是编写一段完美的代码一样重要。在面试战场上,我们需要像忍者一样灵活,像侦探一样聪明,还要像无敌铁金刚一样坚定。只有掌握了这些技巧,我们才能在面试的舞台上闪耀光芒,成为那个令HR们心动的程序猿!总之,在程序员面试中,除了展示自己的技能和经验外,还需要注意以上提到的面试技巧。提示:可以分享自己面试时候的经历。
2024-01-13 20:53:23 424
原创 C# 中,接口和抽象类的区别,分别在什么时候使用
在C#中,接口和抽象类都可用于创建可由子类实现和继承的规范。尽管它们有相似之处,但在使用场景和行为上存在显著差异。总结:选择接口或抽象类取决于你的具体需求和设计意图。在定义一组行为规范时,通常使用接口;而在需要共享某些代码或状态时,通常使用抽象类。
2024-01-13 20:50:51 617
原创 OpenPLC v3 代码结构
总的来说,OpenPLC v3 的代码结构比较清晰,模块划分明确,实现了核心模块、主设备模块、从设备模块、控制模块和 GUI 模块的分离。- DefaultDNP3SlaveApplication:默认的从设备应用层,实现 DNP3 协议的 Master-Slave 通信。Slave 模块包含 DNP3 协议的实现,用于接收主设备发送的数据和执行相应的控制操作。- DNP3Slave:从设备类,负责接收主设备发送的数据和执行相应的控制操作。2. Master:主设备模块,实现与从设备通信的接口。
2024-01-11 22:47:50 529
原创 C#中,unsafe、fixed和checked关键字
在C#中,unsafefixed和checked关键字都是用来控制代码执行和内存访问的。下面我将分别解释这三个关键字的作用。
2023-12-27 14:40:13 541
原创 整理输出目录的Visual Studio的批处理脚本
总的来说,这段脚本的目的是将项目中的所有文件和文件夹(除了指定的排除项)移动到一个名为“lib”的新文件夹中。这段指令是一个Visual Studio的批处理脚本,主要用于移动所有的程序集和相关文件到。
2023-12-23 11:54:40 665
原创 .net中httpclient 怎么发送student 到httpserver
在.NET中,你可以使用HttpClient来发送数据到HTTP服务器。然后,我们获取服务器的响应并打印出来。请注意,你需要将示例中的URL替换为你自己的服务器端点URL。方法将Student对象转换为JSON字符串,并发送一个POST请求到服务器的。在上面的示例中,我们使用HttpClient的。
2023-12-18 11:40:50 366
原创 WPF DataGrid 里面的ToggleButton点击不生效
已解决:根本原因是没写UpdateSourceTrigger=PropertyChanged。具体原因参考下面文章:鸣谢作者。
2023-12-08 12:34:58 800
原创 在C#中,PropertyInfo.SetValue方法用于设置属性值
在C#中,PropertyInfo.SetValue方法用于设置属性值。该方法接受两个参数:对象实例和属性值。
2023-12-06 21:22:52 577
原创 localhost和127.0.0.1在以下四个方面存在区别
总的来说,localhost和127.0.0.1在原理、概念、使用场景和安全性方面都存在明显的区别。在使用时需要根据具体的需求和场景选择合适的方式。以上信息仅供参考,建议咨询专业网络工程师或者查阅相关技术手册获取更全面和准确的信息。
2023-12-02 09:05:41 940 1
原创 git 打包差异文件方便现场更新补丁包的方法
如果想要打成压缩包则:将temp目录下的所有文件打包为modules.tar.gz。# 在源代码根目录,使用git status命令获取已修改文件的列表。# 将已修改文件列表逐一复制到当前目录下的0.Update目录。# 在当前目录下,创建0.Update目录。
2023-12-01 15:43:46 368
原创 WPF拖拽相关的类
在上面的示例中,我们首先获取当前窗口的VisualTree。如果找到了具有特定名称的元素,我们可以对该元素执行任何所需的操作,例如更改其背景颜色。WPF的VisualTreeHelper类是一组静态方法,主要用于在WPF的VisualTree(可视化树)中进行遍历和查找操作。AdornerLayer是一种特殊的Panel,它能够将装饰器(Adorner)与要装饰的元素关联起来。总的来说,WPF的DragAdorner是一种装饰器,它可以提供各种视觉效果和功能,以增强用户体验。
2023-11-18 20:25:45 531
原创 同事关系处理的重要性
处理好同事间的关系,对于职场生涯至关重要。通过尊重、沟通、公平、包容等原则,我们可以创造一个和谐的工作氛围,提高工作效率,实现个人和团队的共同成长。希望大家能够运用本文提出的建议,更好地处理同事间的关系,迈向成功的未来。3. 沟通:主动沟通,倾听他人意见,表达自己的需求和想法,减少误解和矛盾。3. 善于倾听:倾听他人的意见,关心同事的生活和工作,表现出关心和关注。4. 沟通技巧:提高自己的沟通技巧,有效表达自己的观点,减少误解和矛盾。4. 宽容谅解:学会宽容对方的错误,给予谅解和支持,增进彼此的关系。
2023-11-07 08:49:38 124
原创 面向对象程序设计及其在现代软件开发中的应用
其强调的是将现实世界中的事物抽象成具有属性和方法的对象,通过对象之间的交互来完成特定的任务。1. 微服务架构:越来越多的企业开始采用微服务架构进行软件开发,这种架构模式强调将复杂的系统拆分成多个独立的、可组合的服务,从而实现更高的系统可维护性、可扩展性和灵活性。3. 云计算与大数据:随着云计算和大数据技术的发展,面向对象程序设计在各领域的应用将更加广泛,为开发者提供更多创新的可能。2. 封装:将数据和操作数据的方法封装在一起,形成一个不可变的整体,从而隐藏内部实现细节,提高代码的可维护性和可重用性。
2023-11-07 08:38:52 310
原创 可以使用以下代码对数据库查询结果进行分组统计
这个示例代码将连接到本地SQL Server数据库(如果存在),并执行查询"SELECT * FROM Customers"。然后,它将查询结果进行分组统计,并输出分组统计结果。注意,在这个示例中,我们假设DataTable中有一个名为"GroupByColumn"的列,用于分组统计。在这个示例中,我们使用QueryHelper类执行查询,并将其结果转换为DataTable。最后,我们使用Select方法将分组结果转换为一个新的DataRow对象,其中包含分组列和计数列。
2023-11-06 22:53:06 74
原创 SQLSugar查询返回DataTable
然后,它将查询结果转换为DataTable,并输出到控制台。SQLSugar是一个用于执行SQL查询的C#库,它提供了简单易用的API接口来执行SQL查询。要查询返回DataTable,可以使用SQLSugar的QueryHelper类。在这个示例中,我们使用QueryHelper类执行查询,并将其结果转换为DataTable。注意,我们使用的是DataRow类型,它表示DataTable中的一行数据。
2023-11-06 22:44:03 879
原创 C#通过TCP发送List<string>
请注意,这个示例代码使用了Json.NET库来将List<string>对象转换为JSON字符串,然后将JSON字符串转换为字节数组。如果您没有安装Json.NET库,可以使用NuGet包管理器安装它。
2023-11-06 22:27:59 641
原创 采用XML作为GUI描述语言
这些机制使得XML能够作为GUI描述语言,用于定义和描述用户界面。通过使用XML,可以实现界面的可扩展性和可重用性,同时也可以实现界面的可配置性和可维护性。
2023-11-02 19:52:02 545
原创 常用的解析XML的开源库
这些开源库提供了丰富的解析XML的功能,可以用于不同的XML处理场景。同时,它们也提供了社区支持,使得开发者可以更容易地学习和使用它们。
2023-11-02 19:51:03 279
原创 DOM是什么
使用DOM API可以方便地对XML文档进行操作,例如获取、添加、删除元素,修改属性值等。但是,DOM API也有一些缺点,例如内存占用高、解析速度慢等,因此,在实际应用中,可以根据具体需求选择合适的XML处理库。XDocument是一个基于.NET的XML处理库,它可以将XML文档映射到.NET对象,也可以将.NET对象映射到XML文档。DOM API提供了一组对象和属性,用于操作XML文档的各个部分,例如元素、属性、文本节点等。DOM API由浏览器实现,因此它在不同的浏览器中可能存在差异。
2023-11-02 19:50:06 79
原创 Halcon Blob 焊锡质量检测demo分析-board.hdev
Halcon 代码* board.hdev: Detection of missing solder* get_system ('clip_region', Information)set_system ('clip_region', 'true')dev_update_window ('off')dev_close_window ()dev_open_window (0, 0, 512, 512, 'black', WindowID)read_image (Images, ['i...
2021-07-03 08:35:12 716 2
Linux设备树调试方法-很好的一个外文文献.pdf
2019-09-10
Ubuntu-unity-tips-tricks-rev-2 Ubuntu unity的相关配置操作说明
2019-04-26
AT91SAM9261S
2018-05-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人