c#
wqq1027
这个作者很懒,什么都没留下…
展开
-
C#全路径问题
路径2:C:\Users\root\Desktop\1.txt。注意:前面加上/之后前面的全路径变了,不是当前工作目录下了。当前工作目录:C:\Users\root\Desktop。路径1:C:\1.txt。原创 2023-01-10 14:06:01 · 283 阅读 · 0 评论 -
C#向非托管代码传递委托异常
CallbackOnCollectedDelegate”:“对“::Invoke”类型的已垃圾回收委托进行了回调。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用它们。c#调用c++,传递委托参数时,需要将委托先赋值给一个全局变量,然后将这个全局变量传入c++的委托参数上,否则前几次执行正常,垃圾回收后委托被清理掉了,程序退出。托管调试助手 “CallbackOnCollectedDelegate” Message=托管调试助手。原创 2022-12-14 19:53:05 · 1442 阅读 · 0 评论 -
C#观察者模式在桌面端程序的应用
在桌面端软件程序的应用场景是在一个窗体中,监听串口或Socket,解析之后,需要在不是当前窗体的控件中对解析的数据进行处理,并将处理结果进行返回,并对返回的结果在主窗体上展示。原创 2022-11-08 21:15:05 · 171 阅读 · 0 评论 -
ASP.NET Core NET6 修改监听URL
在appsettings.json文件中添加: “Urls”: “http://localhost:5003”,launchSettings.json修改各项的applicationUrl。注意:多个地址之间使用;原创 2022-10-14 21:21:59 · 563 阅读 · 0 评论 -
Add-Migration
安装nuget包 :EntityFramework。原创 2022-09-13 20:56:23 · 448 阅读 · 0 评论 -
C#新语法汇总
从 C# 8.0 开始,可以使用?原创 2022-08-31 22:12:12 · 210 阅读 · 0 评论 -
设置开机自启及出现的问题
正常打开工作路径:C:\Users\root\Desktop\新建文件夹。将自己写的脚本放入该文件夹即可实现开机自启动(这种方式必须要登录)出现问题的原因是使用了相对路径,导致最终的路径改变,没有访问权限。注册表自启工作路径:C:\Windows\system32。解决方法:使用完整的路径。......原创 2022-08-31 22:06:58 · 1281 阅读 · 0 评论 -
NetMQ使用说明
官方文档https://netmq.readthedocs.io/en/latest/introduction/githubhttps://github.com/zeromq/netmq官网介绍的几种使用模式和一些组件,注意版本有3和4不是很兼容,示例大部分是使用的3版本,4不支持。如果在版本4下报错,先将版本改为3,之后查看过时语法里的提示,修改成最新的语法。主要介绍几种使用模式:1.请求/回应https://netmq.readthedocs.io/en/latest/request-r原创 2022-05-10 19:39:07 · 1236 阅读 · 0 评论 -
C#集合初始值语法
官方文档:https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/classes-and-structs/object-and-collection-initializers集合初始值设定项在初始化实现 IEnumerable 的集合类型和初始化使用适当的签名作为实例方法或扩展方法的 Add 时,集合初始值设定项允许指定一个或多个元素初始值设定项。 元素初始值设定项可以是简单的值、表达式或对象初始值设定项。 通过使用集合初始值设原创 2022-05-10 19:10:33 · 1943 阅读 · 1 评论 -
全局配置文件的一种实现方式
全局配置文件的一种实现方式全局配置文件类可以增加加载配置文件的方法,然后修改配置类的属性,在set方法中修改值同时修改配置文件中的值。原创 2022-05-05 21:19:48 · 158 阅读 · 0 评论 -
OWIN No assembly found containing a Startup or [AssemblyName].Startup class.
错误:System.EntryPointNotFoundException:“The following errors occurred while attempting to load the app. - No assembly found containing an OwinStartupAttribute. - No assembly found containing a Startup or [AssemblyName].Startup class.”解决方案:// 方法1[asse原创 2022-05-05 21:17:46 · 399 阅读 · 0 评论 -
topshelf教程
官方文档:http://docs.topshelf-project.com/en/latest/overview/commandline.htmlnuget 包:TopshelfTopshelf is a library that simplifies the creation of Windows services using .NET.Command-Line Reference service.exe [verb] [-option:value] [-switch] run原创 2022-05-05 21:07:43 · 638 阅读 · 0 评论 -
WPF程序更换风格主题
// 方式1<Application <Application.Resources> <!--<ResourceDictionary Source ="/PresentationFramework.Royale, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35;component/themes/royale.normalcolor.xaml"/>-->原创 2021-12-25 14:23:20 · 893 阅读 · 0 评论 -
C#枚举类型
string[] System.Enum.GetNames(typeof(EnumType)); // 获取枚举名称列表Array System.Enum.GetValues(typeof(EnumType)); // 获取枚举值列表int EnumType的枚举值.GetHashCode(); // 获取当前枚举值的数值类型EnumType (EnumType)Enum.Parse(typeof(EnumType), “name”); // 将当前的字符串转换为枚举类型的值参考:https原创 2021-11-01 22:54:38 · 529 阅读 · 0 评论 -
.NET Framework、C#语法、CLR三者之间的关系
.NET Framework 由两个采用不同版本的主要组件构成:一组程序集,它们是为应用提供功能的类型与资源的集合。 .NET Framework 和程序集使用相同的版本号。 例如,.NET Framework 版本包括 4.5、4.6.1 和 4.7.2。公共语言运行时 (CLR),可管理并执行应用代码。 单个 CLR 版本通常可支持多个 .NET Framework 版本。 例如,CLR 版本4.0.30319.xxxxx(其中 xxxxx 小于42000)支持 .NET Framework原创 2021-11-01 22:27:43 · 517 阅读 · 0 评论 -
VS解决方案文件格式说明
Microsoft Visual Studio Solution File, Format Version 12.00# Visual Studio Version 17VisualStudioVersion = 17.0.31815.197MinimumVisualStudioVersion = 10.0.40219.1Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Example", "Example.csproj", "{9A7DEE.原创 2021-11-01 21:59:18 · 614 阅读 · 0 评论 -
C#类库和用户控件库的区别及相互转换
用户控件库及类库,项目都是类库。用户控件库启动时会打开UserControlTestContainer。但是在项目文件里添加了下面配置,删除即成为普通类库。<ItemGroup><Service Include="{94E38DFF-614B-4cbd-B67C-F211BB35CE8B}" /></ItemGroup>上面的“Service元素只是运行UserControlTestContainer.exe可执行文件,将程序集名称作为参数传递。相关链接:h原创 2021-11-01 21:51:38 · 611 阅读 · 0 评论 -
VS自定义模板
参考:https://www.cnblogs.com/mq0036/p/14646517.html导出模板有项目模板、项模板。导入模板只需要把模板放在下面2个文件夹下即可。C:\Users\用户\Documents\Visual Studio 2022\Templates\ItemTemplatesC:\Users\用户\Documents\Visual Studio 2022\Templates\ProjectTemplates...原创 2021-11-01 21:47:56 · 475 阅读 · 0 评论 -
C#类之间嵌套引用测试
public class Class1 { Class2 class2 = new Class2(); public Class1() { Console.WriteLine("Class1创建了"); } ~Class1() { Console.WriteLine("Class1析构了"); } } public cla.原创 2021-10-26 20:14:21 · 242 阅读 · 0 评论 -
定点小数概念及计算
关键公式:十进制数值=(-1)符号位位权+其它位*位权示例:11010.1 = 1*2^4 + 1*2^3 + 0*2^2 + 1*2^1 + 0*2^0 + 1*2^-1= 16 + 8 + 2 + 0.5= 26.5参考:定点数转换十进制小数:https://blog.csdn.net/K346K346/article/details/80704141介绍:https://blog.csdn.net/niaolianjiulin/article/details/82764511原创 2021-10-26 20:10:42 · 659 阅读 · 0 评论 -
List集合移除元素示例
/// <summary> /// list集合示例 /// </summary> public class ListExample : IExample { public const string MethodName = "RemoveAll"; public void Run() { Console.WriteLine("ListExample"); ...原创 2021-10-26 20:02:20 · 210 阅读 · 0 评论 -
c# 环形引用问题
https://bbs.csdn.net/topics/330120571/c# 环形引用 垃圾回收机制是会清理掉的。 static int a = 0; public class ClassA { public ClassB classB; public ClassA() { classB = new ClassB(this);原创 2021-10-19 23:04:26 · 275 阅读 · 0 评论 -
Winfrom 设置确认按钮
// 设置确认按钮this.AcceptButton = this.okButton;在ShowDialog下会关闭窗体,在Show下不会关闭窗体。原创 2021-10-19 22:49:36 · 338 阅读 · 0 评论 -
c++c#互相调用
[DllImport(@"cpp_demo.dll", EntryPoint = "add", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)] public static extern int add(int a, int b);extern "C" __declspec(dllexport)int __stdcall add(int x, int y){ return x + y;}c+原创 2021-10-19 22:42:08 · 181 阅读 · 0 评论 -
winfrom阻止关闭窗口
https://www.cnblogs.com/XinruiIIiiiii/p/14648323.htmlC#(winform)记录阻止关闭页面方法e.Cancel = false; //不拦截,响应操作原创 2021-10-19 22:38:43 · 473 阅读 · 0 评论 -
DebugView使用
提供调试便利——C#中的Debugger类https://blog.csdn.net/deatharthas/article/details/89047918DebugView 简单使用https://www.cnblogs.com/lsgxeva/p/13859488.htmlDebugView 下载https://docs.microsoft.com/zh-cn/sysinternals/downloads/debugviewTrace.WriteLine("日志");Debugger.原创 2021-10-19 19:48:54 · 168 阅读 · 0 评论 -
c# TreeView 多次触发的问题
动态修改 TreeView 时BeforeSelect、AfterSelect多次触发的问题。相关的事件已经在动态修改的时候已经移除了,但是还是多次执行,treeView.TabStop = false可解决,猜测是默认创建的时候会改变,触发了事件。// 修改下面的属性this.treeView.TabStop = false; // 获取或设置一个值,该值指示用户能否使用 Tab 键将焦点放到该控件上。参考:https://www.cnblogs.com/jxinxin/p/3227292.ht原创 2021-10-19 19:44:40 · 523 阅读 · 0 评论 -
配置VS不生成XML和PDB文件
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> <AllowedReferenceRelatedFileExtensions> <!-- 阻止默认的 XML 和 PDB 文件复制到 RELEASE 的输出目录. 只有*.allowedextension 扩展名的文件可以被包含, 当然这个扩展的文件并不存在.--> .allowed.原创 2021-09-10 23:54:12 · 1008 阅读 · 0 评论 -
c#连接MySQL8.0异常
System.Security.Authentication.AuthenticationException: 调用 SSPI 失败,请参见内部异常。 ---> System.ComponentModel.Win32Exception: 接收到的消息异常,或格式不正确。 --- 内部异常堆栈跟踪的结尾 --- 在 System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtoco原创 2021-08-17 19:34:28 · 1935 阅读 · 2 评论 -
c#合并多个dll
nuget添加Costura.fody即可,主要版本。原创 2021-07-15 23:33:53 · 475 阅读 · 0 评论 -
当前标识(IIS APPPOOL\DefaultAppPool)没有对“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NE
以管理员身份运行执行“Windows power shell”运行下面脚本。C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Aspnet_regiis.exe -ga 'IIS APPPOOL\DefaultAppPool'注意:IIS APPPOOL\DefaultAppPool为当前标识(IISAPPPOOL\DefaultAppPool)没有对“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\原创 2021-07-06 20:17:25 · 10701 阅读 · 7 评论 -
根据时间段从原点时间取间隔相同的时间点
/// <summary>/// 根据时间段从原点时间取间隔相同的时间点/// </summary>/// <param name="dateTime">原点时间</param>/// <param name="startTime">开始时间</param>/// <param name="endTime">结束时间</param>/// <param name="timeSpan">时间原创 2021-07-05 21:48:05 · 192 阅读 · 0 评论 -
c#操作mysql单条插入速度慢
参考:https://blog.csdn.net/festone000/article/details/89505773开启连接池pooling=true;pooling=false;未开启连接池551167149152149163159178142152148150162170149147158159157158148147147开启连接池4721118111111121111111111211原创 2021-05-04 20:14:47 · 338 阅读 · 0 评论 -
用松鼠顺利地部署您的应用程序
转载:https://intellitect.com/deploying-app-squirrel/应用程序部署变得容易许多.NET开发人员都熟悉ClickOnce,这是微软用于快速打包和部署易于最终用户安装的软件的简单部署解决方案。然而,这些便利也有其局限性。只有几种自动更新的情况。要在更新可用时显示自定义UI,需要禁用自动更新并处理代码中的所有内容。 生成的安装程序具有固定的部署位置。安装程序必须下载所有应用程序文件。 确保下载则每个应用程序文件的LL。DOI吴先生当可能需要重新尝.原创 2021-04-16 14:11:20 · 282 阅读 · 0 评论 -
c#数字与ip互转
uint ip = 3232235788; uint nIp1 = ((ip & 0xff000000) >> 24); uint nIp2 = ((ip & 0x00ff0000) >> 16); uint nIp3 = ((ip & 0x0000ff00) >> 8); uint nIp4 = (ip & 0x0000...原创 2021-04-12 14:30:44 · 326 阅读 · 0 评论 -
MEF-NET中值得体验的精妙设计
转载:https://kb.cnblogs.com/page/97675/摘要:.NET 是 Microsoft XML Web services 平台。MEF是.NET Framework 4.0一个重要的库,Visual Studio 2010 Code Editor的扩展支持也是基于MEF构建的。下面让我们一起来看。 MEF(Managed Extensibility Framework)是.NET Framework 4.0一个重要的库,Visual Studio 2010 Code.原创 2021-02-26 11:56:47 · 384 阅读 · 0 评论 -
Form.ShowDialog注意事项
需求:窗体中显示其他窗体,使用ShowDialog等待其他窗体耗时代码结束后,根据委托返回的结果,执行下方代码。问题现象:也能等待耗时操作完成之后,执行判断 if (user1 == null),之后走的(b, u)=>{}里的代码问题代码:# 主窗体Form form1 = new Form((b, u) => { if (b) {原创 2021-01-30 12:21:02 · 686 阅读 · 0 评论 -
当前不会命中断点。源代码与原始版本不同
重新生成解决方案重新生成之后无效的话,在断点附近写几行输出的代码,再重新生成解决方案。原创 2021-01-17 22:09:16 · 328 阅读 · 0 评论 -
MySQL创建C#属性
# 设置最大长度SET SESSION group_concat_max_len=102400;# 拼接属性SELECT TABLE_NAME, GROUP_CONCAT( CONCAT_WS( '\n', '/// <summary> ', CONCAT('///', COLUMN_COMMENT), '/// </summary>', CONCAT( 'public string原创 2021-01-12 14:34:51 · 106 阅读 · 0 评论 -
C#操作剪切板
C#操作剪切板 // 设置剪切板内容 Clipboard.SetDataObject("文本内容"); // 读取剪切板内容 string str = Clipboard.GetText(); // 字符串集合 //https://docs.microsoft.com/zh-cn/dotnet/api/system.collections.specialized.stringcollection?view=ne原创 2020-12-30 12:01:26 · 1756 阅读 · 1 评论