.NET后端知识汇总
C#.net系列后端知识点汇总(也有些许数据库、svn等),他山之石。
1..net相关技术:XML、webservice、SOAP,其中webservice使用三大技术:XML、SOAP、WSDL。
也有一说webservice三要素:
- SOAP:简单对象访问协议,数据交换的一种协议规范,用来描述传递信息的格式。
- WSDL:web service description language,用来描述如何访问具体接口。
- UDDI:用来管理、分发、查询webservice
2.分布式:分布式作业、分布式存储。
3.数据库纵向切割、横向切割。
4.log4net使用:通过配置文件:App.config或者Web.config
在<configSections>节点下,配置<section>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
对应<log4net>节点配置如下:主要有<appender>和<logger>两个节点
<log4net>
<!--记录日志附加介质-->
<appender name="InfoAppender" type="log4net.Appender.RollingFileAppender,log4net">
<file value="Log\\Info\\" /><!--日志文件生成目录-->
<appendToFile value="true" />
<rollingStyle value="Composite" /><!--混合使用日期和文件大小变换日志文件名-->
<maxSizeRollBackups value="-1" />
<maximumFileSize value="1MB" /><!—文件大于1mb,另起一个日志文件-->
<staticLogFileName value="false" />
<DatePattern value="yyyy-MM-dd".txt""/><!-- yyyy-MM-dd:每天都改变日志 -->
<layout type="log4net.Layout.PatternLayout"><!—日志记录的格式-->
<conversionPattern value="%date %-5level - %message%newline" />
</layout>
</appender>
<!--错误日志附加介质-->
<appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender,log4net">
<file value="Log\\Error\\" />
<appendToFile value="true" />
<rollingStyle value="Composite" /><!--混合使用日期和文件大小变换日志文件名-->
<maxSizeRollBackups value="-1" />
<maximumFileSize value="1MB" />
<staticLogFileName value="false" />
<DatePattern value="yyyy-MM-dd".txt""/><!-- yyyy-MM-dd:每天都改变日志 -->
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date %-5level - %message%newline" />
</layout>
</appender>
<!--记录日志类-->
<logger name="Info">
<level value="ALL"/>
<appender-ref ref="InfoAppender" />
</logger>
<!--错误日志类-->
<logger name="Error" additivity="true">
<level value="ALL"/>
<appender-ref ref="ErrorAppender"/>
</logger>
</log4net>
在类中应用:
a.自定义一个logger类,用来定义并实现记录日志方法
class logHelper
{
public static readonly log4net.ILog loginfo = log4net.LogManager.GetLogger("Info");
public static readonly log4net.ILog logerror = log4net.LogManager.GetLogger("Error");
/// <summary>
/// 记录日志
/// </summary>
/// <param name="info"></param>
public static void WriteLog(string info)
{
if (loginfo.IsInfoEnabled)
{
loginfo.Info(info);
}
}
/// <summary>
/// 错误日志
/// </summary>
/// <param name="info"></param>
public static void WriteLog(string info,Exception ex)
{
if (logerror.IsErrorEnabled)
{
logerror.Error(info,ex);
}
}
}
b.使用:
logHelper.WriteLog("use info log");//使用说明日志
logHelper.WriteLog("use error log", ex);// 使用错误日志
appender:定义日志输出方式,写到哪,写成什么文件,包括:layout一个appender只能有一个layout。
logger:直接和应用程序交互的组件,logger只是产生日志,由它引用的appender记录到指定媒介。
5. svn管理文档,注意文档格式一定要正确,否则会引发冲突,比如提交的是rtf(富文本文件),update之后以word格式打开,然后提交,以rtf格式提交的一方再update会有冲突!
6. 操作系统中,请求默认端口是80端口,即请求时不添加端口号则默认为是80,windows,linux应该都是。
7. 数据库 oralce/sqlserver 不等于一个不为空的值,意味着:1.不等于这个值,2.不等于空(null),所以想把空值不漏掉请加:xx <>'1' or xx is null
sqlserver:isnull(xx,0) <> '1'
oralce:nvl(xx,0) <> '1'
8. 使用IIS托管应用程序时,当我们需要上传大文件(4MB以上)时,应用程序会提示Maximum request length exceeded的错误信息。该错误信息的翻译:超过最大请求长度:设置
web.config:
<system.web>
<httpRuntime requestValidationMode="2.0" maxRequestLength="2097151"/>
</system.web>
<!--取消校验Request获取数据有特殊字符,上传大文件设置-->
9. IIS7.0、IIS7.5、IIS8.0等提示“请求筛选模块被配置为拒绝包含双重转义序列的请求”的解决方法:
<system.webServer>
<security>
<requestFiltering allowDoubleEscaping="true"/>
</security>
</system.webServer>
10.文件名不能包含的特殊字符筛选:
fileName = Regex.Replace(bjDt.Rows[0]["报价名称"] + "", @"[\/*<>???::""]", "");// 特殊字符置为空
11. 全局程序集缓存(共享程序集GAC)
GAC
(目录:C:\Windows\assembly)
管理员进入 VS 2017的开发人员命令提示符
卸载程序集
gacutil -u office
安装程序集
gacutil -i d:\Cooper\dll\office
12. cmd:shutdown -a
停止一切通过计划任务执行的关机、注销等操作.
13. wcf内存自检失败:
异常信息:内存入口检查失败,因为可用内存(xxx 字节)少于总内存的 xx%。因此,该服务不可用于传入的请求。若要解决此问题,请减少计算机上的负载,或调整 serviceHostingEnvironment 配置元素上的 minFreeMemoryPercentageToActivateService 的值。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.InsufficientMemoryException: 内存入口检查失败,因为可用内存(438648832 字节)少于总内存的 50%。因此,该服务不可用于传入的请求。若要解决此问题,请减少计算机上的负载,或调整 serviceHostingEnvironment 配置元素上的 minFreeMemoryPercentageToActivateService 的值。
英文报错:Memory gates checking failed because the free memory ({0} bytes) is less than {1}% of total memory. As a result, the service will not be available for incoming requests. To resolve this, either reduce the load on the machine or adjust the value of minFreeMemoryPercentageToActivateService on the serviceHostingEnvironment config element.
出现该错误信息的原因是因为WCF服务激活之前,系统应该具有的最小内存量不足config文件中设置的百分比。
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" minFreeMemoryPercentageToActivateService="0" />
14.svn-sqlite3:
svn更新或提交代码中断时容易lock,这时可以试试clear up,如果不管用,则,在.svn文件夹下放一个sqlite3,然后执行如下语句:
.open wc.db;
select * from work_queue;
select * from wc_lock;
15.CRON表达式:Quartz使用
cron表达式,不论是*/2,还是0/2 ,都是在整点进行:
如果每小时执行一次:0 0 * * * ? * 或者 0 0 0/1 * * ? * 或者 0 0 */1 * * ? *,用cron表达式就相当于知道到底在哪一个时间点执行
例子:
0 0/5 * * * ? *:每五分钟执行一次,假如现在是17:49,则会在17:50执行,把每小时按五分钟分割成12份,共13个时刻点:0 5 10 15 20 25 30 35 40 45 50 55 59:59,所以会在当前时间的下一个整点执行。如果这样写:0 */5 * * * ? *,假如现在是17:49,会立即执行一次,下一次的执行时刻同上
16.power designer 生成数据库文档:
1.生成physical-data-model
2.Report->Reports
--List of Tables
--Table
--List of Table Columns layout Name 25% Data Type 20% Default Value 15% Comment 40%
section -header/footer 清空
.NET后端知识汇总的更多相关文章
- 沉淀,再出发:Java基础知识汇总
沉淀,再出发:Java基础知识汇总 一.前言 不管走得多远,基础知识是最重要的,这些知识就是建造一座座高楼大厦的基石和钢筋水泥.对于Java这门包含了编程方方面面的语言,有着太多的基础知识了,从最初的 ...
- web前端project师知识汇总
分类: Web开发应用 一.何为Web前端project师? 前端project师,也叫Web前端开发project师.他是随着web发展.细分出来的行业.Web前端开发proj ...
- Oracle手边常用70则脚本知识汇总
Oracle手边常用70则脚本知识汇总 作者:白宁超 时间:2016年3月4日13:58:36 摘要: 日常使用oracle数据库过程中,常用脚本命令莫不是用户和密码.表空间.多表联合.执行语句等常规 ...
- Oracle 数据库知识汇总篇
Oracle 数据库知识汇总篇(更新中..) 1.安装部署篇 2.管理维护篇 3.数据迁移篇 4.故障处理篇 5.性能调优篇 6.SQL PL/SQL篇 7.考试认证篇 8.原理体系篇 9.架构设计篇 ...
- Vertica 数据库知识汇总篇
Vertica 数据库知识汇总篇(更新中..) 1.Vertica 集群软件部署,各节点硬件性能测试 2.Vertica 创建数据库,创建业务用户测试 3.Vertica 数据库参数调整,资源池分配 ...
- 【转】ACM博弈知识汇总
博弈知识汇总 转自:http://www.cnblogs.com/kuangbin/archive/2011/08/28/2156426.html 有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍 ...
- 最全的jQuery知识汇总
本帖最后由 断天涯大虾 于 2016-12-26 10:22 编辑<ignore_js_op> jQuery是什么? jQuery是javascript编写一个可重用的JavaScript ...
- jquery基础知识汇总
jquery基础知识汇总 一.简介 定义 jQuery创始人是美国John Resig,是优秀的Javascript框架: jQuery是一个轻量级.快速简洁的javaScript库.源码戳这 jQu ...
- ACM博弈知识汇总(转)
博弈知识汇总 有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可.两个人轮流从堆中取物体若干,规定最后取光物体者取胜.这是我国民间很古老的一个游戏,别看这游戏极其简单,却蕴含着深刻 ...
随机推荐
- 算法学习之剑指offer(四)
题目1 题目描述 输入两棵二叉树A,B,判断B是不是A的子结构.(ps:我们约定空树不是任意一个树的子结构) /** public class TreeNode { int val = 0; Tree ...
- Jenkins构建Jmeter项目
1.启动jenkins 2.新建自由风格的项目 定时任务 构建操作 安装HTML Publisher插件 构建后操作 最后保存构建,查看报告
- 【Medium 万赞好文】ViewModel 和 LIveData:模式 + 反模式
原文作者: Jose Alcérreca 原文地址: ViewModels and LiveData: Patterns + AntiPatterns 译者:秉心说 View 和 ViewModel ...
- Cocos2d-x 学习笔记(26) 从源码学习 DrawCall 的降低方法
[Cocos2d-x]学习笔记目录 本文链接:https://www.cnblogs.com/deepcho/cocos2dx-drawcall-glcalls 1. 屏幕左下角 我们通常在Cocos ...
- eclipse中最有用的10个快捷键
这里列出一些在使用eclipse的过程中最有用的10个快捷键,通过灵活使用这些快捷键可以提高开发效率和开发质量. 1. [ctrl+shift+r]打开资源 这可能是所有快捷键中最省时间的了.这个快捷 ...
- 技术分享:Dapr,让开发人员更轻松地构建微服务应用
最近一直在学习微服务相关的技术.微服务架构已成为构建云原生应用程序的标准,并且可以预见,到2022年,将有90%的新应用程序采用微服务架构.微服务架构提供了令人信服的好处,包括可伸缩性,松散的服务耦合 ...
- 自学php有哪些好的方法
很多php新手对于如何自学php很苦恼,找不到入门到方法,有些时候一个软件都下载不下来,后者环境都不能安装好,大大打击了学习的信心.那么如何能自学好php,学好php有哪些方法呢,接下来我就给同学们提 ...
- 百万年薪python之路 -- 闭包
2.闭包 闭包的定义: 闭包是嵌套在函数中的函数. 闭包必须是内层函数对外层函数的变量(非全局变量)的引用. 一句话定义就是:在嵌套函数内,对非全局变量 (且不是本层的变量)的引用 如何判断判断闭包? ...
- next day
#_*_coding:utf_*_#!/usr/bin/env python now_day=input('当前某一天:').format('%Y.%m.%d')%%输入日期(年.月.日) year= ...
- JAVA nio 简单使用
nio 模拟客户端和服务器互相通讯--传输一个int值,并且不断的+1: 服务器,单线程 public class Server { public static void main(String[] ...