.NET随记【你懂的】
.NET随记.txt放在桌面好久了,编程过程中记录些杂七杂八的东西,分享给大家希望有所帮助。
- goto 常用于 switch语句中
- 字符串相加用 StringBuilder的Append()方法性能好
- str.Trim(',') 清除字符串后的“,”
- str.ToString("参数") 可以生成一定的格式
- 字符串分隔符截取:str.Split(new char[]{','})
- 输出21个A的简单做法:string str=new string('A',21)
- 字符串转化整数:Int32.TryParse() 性能更好
- <div id="sysBar" style="cursor:pointer;"></ div> 层内显示手型
- windows 服务:若要确定如何启动服务,请单击 ServiceInstaller 组件并将 StartType 属性设置为适当的值。
Manual 服务安装后,必须手动启动 Automatic 每次计算机重新启动时,服务都会自动启动 Disabled 服务无法启动 - windows服务安装与卸载(命令)
安装:转到:C:\Windows\Microsoft.NET\Framework\v4.0.30319 目录下,执行InstallUtil.exe MyService.exe命令
卸载:转到:C:\Windows\Microsoft.NET\Framework\v4.0.30319 目录下,执行InstallUtil.exe MyService.exe /u命令 - Windows服务添加安装项目
1,将写好的windows服务切换到设计视图,右键-添加安装程序
2,切换到新生成的ProjectInstaller.cs设计视图,找到serviceProcessInstaller1对Account属性设置为 LocalSystem,对serviceInstaller1的ServiceName属性设置为Server1(服务的名字),StartType属 性设置为Automatic(系统启动的时候自动启动服务)
3,建立一个新的安装项目ServerSetup(我们为刚才那个服务建立一个安装项目)
4,右键-添加-项目输出-主输出-选择Service1-确定
5,右键-视图-自定义操作-自定义操作上(安装)右键-添加自定义操作-打开应用程序文件夹-选择刚才那个主输出-确定
6,右键-视图-自定义操作-自定义操作上(卸载)右键-添加自定义操作-打开应用程序文件夹-选择刚才那个主输出-确定 -设置(arguments属性='/u' 作为卸载时并卸载服务)
7,重新生成,在安装项目下的bin或release下,可找到可执行的安装程序,里面已经包含了所有需要的类库等。
8,双击安装程序安装后,在服务管理器中(我的电脑-右键-管理-服务和应用程序-服务)找到Server1服务,启动服务
- DOS查看端口 netstat -a
- Scoket实现不同网络通信: 设置路由器的端口映射
- 连接字符串:Data Source=(local);Initial Catalog=webSealTicket;Integrated Security=SSPI; Data Source=server;Initial Catalog=db;User ID=test;Password=test;
- 窗体对象.BringToFront() 将窗体放在前面
- asp.net在页面注入脚本:Page.ClientScript.RegisterStartupScript(this.GetType(), "alert1", "<script>alert('" + nameStr + ",你的密码错误!');</script>");
- 正则表达式:Regex myreg = new Regex(""); bool b= myreg.IsMatch("要验证的内容");
- 判断是否连接网络:System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable()
- 网络编程注意防火墙
E:\SQL2008\MSSQL10.MSSQLSERVER\MSSQL\Backup\ - Web Service引用:
1 LunwenService.myWebService1 lws = new LunwenService.myWebService1(); 2 message = lws.GetLunWenName(2); 3 message = lws.GetLunWenDS(3); 4 Response.Write(message);
- 页面输出缓存:<%@ OutputCache Duration="60" VaryByParam="none" %>
- 从数据库中取出图片页面显示: <asp:ImageButton ID="ImageButton1" runat="server" AlternateText="点击图片,打开连接"
ImageUrl='<%# Eval("新闻图片","~/upload/News/{0}") %>' />
或:ImageUrl='<%# String.Format("~/upload/News/{0}",Eval("新闻图片")) %>' - DataBinder类 自动执行类型转换:<%# DataBinder.Eval(Container.DataItem,"数据库字段名",{0:n})>、<%# DataBinder.Eval(Container.DataItem, "Time", "{0:yyyy-mm-dd}")%>
- 跨线程访问控件:CheckForIllegalCrossThreadCalls = false;
- this.InvokeRequired: 判断调用线程是否与创建窗体的线程为同一线程,若不是,则为true;
this.Invoke(); 在创建窗体的线程上执行委托 - ToString()参数:
12345.ToString("n"); 生成 12,345.00
12345.ToString("C"); 生成 ¥12,345.00
12345.ToString("e"); 生成 1.234500e+004
12345.ToString("f4"); 生成 12345.0000
12345.ToString("x"); 生成 3039(16进制)
12345.ToString("p"); 生成 1,234,500.00%
取中文日期显示_年月 string strYM=currentTime.ToString("y");
取中文日期显示_月日 string strMD=currentTime.ToString("m");
取当前年月日,格式为:2003-9-23 string strYMD=currentTime.ToString("d");
取当前时分,格式为:14:24 string strT=currentTime.ToString("t");
Int32.Parse(变量) Int32.Parse("常量") 字符型转换 转为32位数字型 3、 变量.ToString() 字符型转换 转为字符串 12345.ToString("n"); //生成 12,345.00
12345.ToString("C"); //生成 ¥12,345.00
12345.ToString("e"); //生成 1.234500e+004
12345.ToString("f4"); //生成 12345.0000
12345.ToString("x"); //生成 3039 - asp.net中<% > 用法:在百分号內 , 如果百分号后面不带任何符号(冒号、等号、井号) , 即表示要执行一段代码而已,此处不包含任何输出信息;若带符号,即表示执行此处的代码,并且将执行后返回的值绑定(或者显示)在此处。
- asp.net中<%# >和<%= >的区别:绑定时机不同,<%# %>是在控件调用DataBind函数的时候才被确定。
- Asp.Net的Web表单(页面)可分为三种模式:
1.传统的内联代码(.aspx文件):含有代码和用户接口布局的.aspx 文件
2.代码后置(.aspx和.vb/.cs文件):含有用户接口的 .aspx 文件和含有代码的.vb/.cs 文件
3.经过编译的代码后置(.aspx和编译好的.dll文件/放入\bin目录中):含有用户接口的 .aspx 文件和含有代码的.vb/.cs 文件 - 返回代码:<a class="back" href="javascript:history.back(-1);">返回</a>
- C语言:
1 atof():将字符串转换为双精度浮点型值。
2 atoi():将字符串转换为整型值。
3 atol():将字符串转换为长整型值。
4 strtod():将字符串转换为双精度浮点型值,并报告不能被转换的所有剩余数字。
5 strtol():将字符串转换为长整值,并报告不能被转换的所有剩余数字。
6 strtoul():将字符串转换为无符号长整型值,并报告不能被转换的所有剩余数字。 - 运行输入“regedit”获取注册表
- Linq to DaaTable:
var query1=from item in dt.AsEnumerable() orderby item.Field<int>("Age") descending select item;//排序 foreach (var item in query1) { Console.WriteLine("姓名:{0},性别:{1},年龄:{2}",item.Field<string>("Name"),item.Field<string>("Sex"),item.Field<int>("Age")); }
- Linq to XML:using System.Xml.Linq;命名空间中重要的三个类:XElement,XAttribute,XDocument
- System.Environment.CurrentDirectory //当前程序的执行目录
- 常用源码网站:http://www.codeplex.com/,http://sourceforge.net/,http://www.csdn.net/
- windows 剪切板程序 C:\Windows\System32\clipbrd.exe 对应VS中的Clipboard类
- .netFramework参考图书:《CLR via C#(第三版)》译者:周靖 《C#本质论(第三版)》译者:周靖
- WinForm安装程序 System32文件夹下msiexec.exe 参数为 \x
- 全局缓冲区命令:Gacutil
- <table cellSpacing="10" cellPadding="10" width="100%" border="0">;cellSpacing:列之间的间距;cellPadding:行之间的间距;border边框的粗细
- jquery简单用法
1 <script type="text/javascript"> 2 $(document).ready(function(){ 3 $("#btn1").click(function(){ 4 $("#p1").hide();}); 5 }); 6 </script>
- 元素选择器
$("p") 选取 <p> 元素。
$("p.intro") 选取所有 class="intro" 的 <p> 元素。
$("p#demo") 选取 id="demo" 的第一个 <p> 元素。
属性选择器
$("[href]") 选取所有带有 href 属性的元素。
$("[href='#']") 选取所有带有 href 值等于 "#" 的元素。
$("[href!='#']") 选取所有带有 href 值不等于 "#" 的元素。
$("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的元素。
CSS 选择器
$("p").css("background-color","red"); 把所有 p 元素的背景颜色更改为红色: - Event 函数 绑定函数至
$(document).ready(function) 文档的就绪事件(当 HTML 文档就绪可用)
$(selector).click(function) 被选元素的点击事件
$(selector).dblclick(function) 被选元素的双击事件
$(selector).focus(function) 被选元素的获得焦点事件
$(selector).mouseover(function) 被选元素的鼠标悬停事件 - jquery效果
基本:show("slow,function(){};"),hide()
切换:toggle("slow")-可实现显示和隐藏
滑动:slideDown("slow"),slideUp(),slideToggle()-可以实现滑上滑下
淡入淡出:fadeIn("slow"),fadeOut()
透明度:fadeTo("slow",0.25)
自定义:animate({height:400},"slow")-可以多个 - JS
1 document.getElementById("id").style.background="#1112"; 2 document.getElementById("id").style.background="url(img.ipg)";
- this.ddlSheng.DataSource = dsData.Tables[0];
this.ddlSheng.DataTextField = "Zone"; //指定表中的某列 - 正则表达式:(using System.Text.RegularExpressions;)
1 Regex regex = new Regex(@"^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$"); 2 if(regex.IsMatch(mail)) 3 return true;
- Sql server远程连接字符串:
data source=192.168.1.111;initial catalog=BD102010;user id=sa;password=sa;
server=IP,1433;database=ChildrenERecord;Uid=child;Pwd=child - 存储过程分页
1 create procedure pro_fenye 2 @pageSize int,@pageNow int 3 as 4 begin 5 Select top @pageSize 字段名列表 from 表名 where id not in( 6 select top @pageSize*(@pageNow-1) id 7 from 表名) 8 end 9 --@pageSize 每页的显示多少条数据 10 --@pageNow 当前显示的是第几页
- 页面重置:
<input name="重置" type="reset" class="submit" value="重置"/> - 数据库插入信息返回最新ID:
insert into dbo.SeManage_WeixiuQicai(WeixiuID,QicaiID,[Count],Zhuangtai,Explain)
values(1,'7b53331c-c6fd-4ef0-a028-03bdf2a67b4f',111,'未修','asdasd');select @@IDENTITY - <% %> 中可以写任何C#代码
<%Response.Write("asdasdas"); %> - MSChart图表控件绑定数据库
1 chart1.DataSource=Ds; 2 chart1.Series["Series 1"].XValueMember = "Name"; 3 chart1.Series["Series 1"].YValueMembers = "Sales"; 4 chart1.DataBind();
- MSChart饼图绑定
1 double [] yval = { 2,6,4,5,3}; 2 string [] xval = { "Peter", "Andrew", "Julie", "Mary", "Dave"}; 3 Chart1.Series["Series 1"].Points.DataBindXY(xval,yval);
- 脚本或ActivX输出中文出现乱码解决: Web.config中加入
<system.web><globalization requestEncoding="gb2312" responseEncoding="gb2312" /></system.web> - MSChart绑定要以统计每个用户的年销售曲线,那么分组统计的字段名应该设置为Name
Chart1.DataBindCrossTable(myReader,"Name","Year" ,"Sales","Label=Commissions{C}"); - 取得文件的扩展名
System.IO.Path.GetExtension(string path); - js获取项目根路径
1 function getRootPath(){ 2 //获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp 3 var curWwwPath=window.document.location.href; 4 //获取主机地址之后的目录,如: uimcardprj/share/meun.jsp 5 var pathName=window.document.location.pathname; 6 var pos=curWwwPath.indexOf(pathName); 7 //获取主机地址,如: http://localhost:8083 8 var localhostPaht=curWwwPath.substring(0,pos); 9 //获取带"/"的项目名,如:/uimcardprj 10 var projectName=pathName.substring(0,pathName.substr(1).indexOf('/')+1); 11 return(localhostPaht+projectName); 12 }
- js获取DropDownList的SelectText
(document.getElementById("dropdownlistid").options[count].innerText == 设置的值 - Net系列(ORM): EntitysCodeGenerate LINQ TO SQL Grove Rungoo.EnterpriseORM FireCode Creator MyGeneration CodeSmith Pro CodeAuto NHibernate
- 检测危险代码web.config添加:<httpRuntime requestValidationMode="2.0" /><pages validateRequest="false"></pages>
- http://abowman.com/google-modules/dog/
作者:田园里的蟋蟀
微信公众号:你好架构
出处:http://www.cnblogs.com/xishuai/
公众号会不定时的分享有关架构的方方面面,包含并不局限于:Microservices(微服务)、Service Mesh(服务网格)、DDD/TDD、Spring Cloud、Dubbo、Service Fabric、Linkerd、Envoy、Istio、Conduit、Kubernetes、Docker、MacOS/Linux、Java、.NET Core/ASP.NET Core、Redis、RabbitMQ、MongoDB、GitLab、CI/CD(持续集成/持续部署)、DevOps等等。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
微信公众号:你好架构
出处:http://www.cnblogs.com/xishuai/
公众号会不定时的分享有关架构的方方面面,包含并不局限于:Microservices(微服务)、Service Mesh(服务网格)、DDD/TDD、Spring Cloud、Dubbo、Service Fabric、Linkerd、Envoy、Istio、Conduit、Kubernetes、Docker、MacOS/Linux、Java、.NET Core/ASP.NET Core、Redis、RabbitMQ、MongoDB、GitLab、CI/CD(持续集成/持续部署)、DevOps等等。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。