随手记
重启谷歌浏览器:chrome://restart
重启火狐浏览器:shift+f2 restart
ef code first 第一次初始化数据库后,如果在model里面新加字段的话,运行会报错
解决方案:
1,使用 EF 的数据迁移(个人觉得比较麻烦)
在NuGet控制台输入以下命令
PM> Enable-Migrations -EnableAutomaticMigrations
PM> Add-Migration 自定义名称
编写生成的这个类的代码,添加或修改对应的字段(Up,Down方法里面)
PM> Update-Database -Verbose
执行程序包管理器控制台语句,进行数据库版本回溯。
PM> Update-Database –TargetMigration:"201309201643300_AddCity.cs"
2.3、生成数据库版本之间的Sql脚本
执行程序包管理器控制台语句,生成数据库版本之间的Sql脚本。该操作仅为生成Sql语句,并未在数据库中进行执行。
Update-Database -Script -SourceMigration:"201309201643300_AddCity.cs" -TargetMigration:"201309201708043_ModifyCity.cs"
其中-TargetMigration在未指定的情况,默认为迁移到最新的版本。
3、EF Code First Migrations语句的其他参数
1>、为指定的DbContext启用数据库迁移
PM> Enable-Migrations -ContextTypeName Portal.PortalContext
2>、设置是否允许自动迁移
Enable-Migrations
生成的Configuration.cs类文件的构造函数
public Configuration()
{
AutomaticMigrationsEnabled = false;
}
3>、Enable-Migrations指定项目名称
PM> Enable-Migrations -StartUpProjectName Portal
如果在“Package Manager Console”中选择了默认项目可以不设置“-StartUpProjectName”参数;如果多次执行此命令可以添加-Force参数。
4>、查看所执行的Sql语句 -Verbose指令
Update-Database -Verbose
2,在数据库对应的表里面添加对应的字段(个人觉得最好的办法)
xml反序列化 遇到低位的低序位非打印 ASCII 字符例如:&,#时会出错,解决办法:
public static string Repalce(string str)
{
return System.Text.RegularExpressions.Regex.Replace(str, @"[\x00-\x08]|[\x0B-\x0C]|[\x0E-\x1F]", "");
}
angularjs myinfoCtrl名称不可用,用了会有异常。
单元测试:
[ClassInitialize()]在运行类的第一个测试前先运行代码
[ClassCleanup()]在运行完类中的所有测试后再运行代码
[TestInitialize()]在运行每个测试前先运行代码
[TestCleanup()]在运行完每个测试后运行代码
异步编程
async 异步网络处理作用最明显(HttpClient 请求或数据库连接):这个我们大家都很清楚,也很好理解,如果是其他操作,比如一个异步方法中你做了很多费时的计算,
那这个异步将没什么效果,说白了和同步一样,而对于网络操作,我们一般不做处理,发起请求之后等待它完成就行,所以这时候执行到这的线程,可以释放并会到线程池中,
网络操作执行完成之后,再从线程池中随机拿一个线程继续执行。
async 异步并不是真正意义上的“异步”:什么意思呢?你仔细看下上面测试的输出结果,会发现 ManagedThreadId1-6 是顺序输出的,
而不是先输出 ManagedThreadId4 再输出 ManagedThreadId3,所以,异步和同步的执行过程是一样的,并且一个请求下,执行时间也是一样的,上面的异步测试其实某种意义上,
是测试不出任何东西的(从测试结果就可以看出),异步并不能减少你的执行时间,而是增加你的请求执行数量,这个东西说白了,其实就是并发量。
async 异步的精髓是 await:这个之前已经提到了,准确来说,async 异步的精髓是 await 时的线程回收与完成之后的线程切换,这个操作最大的价值是,避免线程的浪费等待,
充分利用线程的执行,有点类似于地主不能容忍奴隶闲着做无意义的事,而是希望他们 24 小时不停工作一样。
log4net
AdoNetAppender:利用ADO.NET记录到数据库的日志。
RollingFileAppender:将日志以回滚文件的形式写到文件中。
SmtpAppender:将日志写到邮件中。
FileAppender:将日志写到文件中。
ASP.NET Identity
Install-Package Microsoft.AspNet.Identity.EntityFramework
Install-Package Microsoft.AspNet.Identity.OWIN
Install-Package Microsoft.Owin.Host.SystemWeb
三大浏览器对audio标签的支持
谷歌兼容几乎所有格式,包括MP3,wav,ogg
火狐也兼容这三种格式,但是有路径问题,路径如果是绝对路径的话会load不出来
ie只兼容MP3
联机事务处理OLTP(on-line transaction processing)、联机分析处理OLAP(On-Line Analytical Processing)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果.