Update一个实体,总提示某个Field值未设置,而这个Field我并没有去修改(应该保持原值。
看了一下SubSonic T4生成的代码,发现SubSonic对实体的Track相对比较简单。我所修改的实体已经在2个视图里打过一圈转了,SubSonic早就不认识它啦。
简单的解决办法也有,但是感觉很Dirty:
在Action里修改好实体(不修改的Field就别动它),给实体的SetIdLoaded方法传入true作为参数,然后丢给BLL里的Save方法,在Save方法里根据ID把数据库里的原实体取出来,根据传入的已修改实体,修改原实体的值,最后Update。
应该有更好的办法,起码我知道EF里有
相关日志
没有相关日志
Filed under: SubSonic 由 AntiGameZ
No Comments »
把生产/开发环境迁移到64位上大约已经有半年了,还未曾遇到过什么问题。今天却算小小的撞了一次墙。
金智的Idstar,给的库是COM+的DLL,用.NET库的工具包装一下就可以拿来给VS用,原来写的一个程序跑在Windows 2003(X86)下,大半年也挺好的。
后来直接把这个程序迁移到Windows 2008 (x64)下的IIS7上跑,似乎也没问题。拿到我自己机器上做开发测试,也没问题(Windows 7 X64)。
最近又需要用到Idstar做东西,本地OK,上了服务器怎么都报COMException,总之就是找不到CLSID。DLL注册了,注册表里有信息,OLE/COM Viewer看一切正常,权限一切正常,根本看不出任何异常的地方。
4小时候……
IIS7,程序池,高级设置,启用32位应用程序,False->True
DONE…
相关日志
Web Deployment Tool (0)
Filed under: ASP.NET, IIS 由 AntiGameZ
3 Comments »
ASP.NET MVC 的Action Filter中,有时需要做一些审计或者日志记录的工作,记录的对象自然是当前执行的Action。抽取信息的方法如下:
获得当前执行的Controller:
string controllerName = filterContext.Controller.GetType().Name;
获得当前执行的Action(两种方法):
string actionMethodName = filterContext.RouteData.Values["action"].ToString();
string actionMethodName = filterContext.ActionDescriptor.ActionName;
获得当前执行Action的参数,稍微复杂一些,因为参数是存在一个字典表里的:
if (filterContext.ActionParameters != null)
{
foreach (KeyValueP [...]
Filed under: ASP.NET MVC 由 AntiGameZ
No Comments »
被ReSharper的快捷键问题搞的有点恼火。现在的Visual Studio主题用了小半年了吧,来自于Rob Conery的TextMate Like主题,也有点倦了。正好,在琢磨MSpec和ReSharper整合的问题是,看到MSpec的作者使用的主题,非常的赞:
此Style来自VIM的一个叫做Wombat的Style,下载地址在此:点击
字体是Envy Code R Preview #7,下载地址在此:点击
相关日志
数据库的版本控制 (0)
Visual Studio 的好插件 - CodeRush Xpress (0)
Visual Studio 中的任务列表( ToDo List ) 支持 (0)
Thread of Day (0)
Thread of Day (0)
Filed under: Visual Studio 由 AntiGameZ
No Comments »
SelectList sl = new SelectList( new[]{
new SelectListItem{ Text="one", Value="1", Selected=true},
new SelectListItem{ Text="two", Value="2"},
new SelectListItem{ Text="three", Value="3"}
}, "Text", "Value", "2" );
绕绕弯,搞不清怎么用集合初始化器来搞个数组(or集合)丢到SelectList的构造函数里面去,还好,有StackOverFlow和Google。
原文:How can i get this ASP.NET MVC SelectList to work?
相关日志
文抓:测试、ASP.NET MVC、IoC (0)
UrlRouting小实验 (0)
Thread of Day (2)
Thread of Day (0)
InfoQ:跟ASP. [...]
Filed under: Snippet 由 AntiGameZ
No Comments »
无聊么?
想找S#arp看看,G到Codeplex的页面,进入看到首页提示,“为了对SVN更好的兼容性,我们将代码托管服务迁移到了Google Code”,点开Google Code的直链,红色的大字,“NOTICE!我们搬到GITHUB去啦”
S#arp确实很敏捷。
一直很想试试看Git,不过总是不得要领,等手上的项目搞完,试试看吧,即便还没有非常好的IDE integration。
相关日志
Thread of Day (2)
Filed under: SCM 由 AntiGameZ
No Comments »
SQL Server 视图的生成
SubSonic的T4脚本,默认是不检查视图的,要想改变这一点,只需将“SQLServer.tt”文件中的:
const string TABLE_SQL=@"SELECT *
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE='BASE TABLE'";
改成
const string TABLE_SQL=@"SELECT *
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE='BASE TABLE'
and table_name not like '%aspnet_%'
unio [...]
Filed under: SubSonic 由 AntiGameZ
No Comments »
1、引用 SubSonic.dll;
2、在 web.config 文件里插入配置串,共三处:
<configSections>
<section name="SubSonicService"
type="SubSonic.SubSonicSection, SubSonic"
requirePermission="false"/>
</configSections>
<connectionStrings>
<add name="Northwind"
connectionString="Data Source=localhost\SQLExpress; Database=Northwind; Integrated Security=true;"/>
</connectionStrings>
<SubSonicSe [...]
Filed under: SubSonic 由 AntiGameZ
1 Comment »
CodeRush Xpress 是一款免费的 VS 插件。就权威的说法,比 ReSharper 快,比 RuSharp 好看,并且基础功能版是免费的。
这篇文章对 CodeRush 的特性做了介绍,CodeRush 自带的文档也很清晰,值得学习深入。
相关日志
新的Visual Studio主题 (0)
数据库的版本控制 (0)
Visual Studio 中的任务列表( ToDo List ) 支持 (0)
Thread of Day (0)
InfoQ:Visual Studio源代码控制包AnkhSVN 2.0介绍 (0)
Filed under: Tool 由 AntiGameZ
No Comments »
数据库的版本控制一直很头疼,毕竟数据库是二进制文件,传统的 CVS,SVN 对它一点办法都没有。据说 VSS 或者 Team Foundation 可能有数据库的版本控制方法,但毕竟没有试过,不大清楚。
Vitaly 的这篇博客介绍了使用 Visual Studio 2008 Team Suite 对 SQL Server 2000 以上数据库进行设计与管理的办法。因为在设计中 VS 会自己生成基于文本的 .sql 文件,所以就给 SVN 留下了同步的可能。
数据库的部署,单元测试,测试数据生成也是非常重要的功能,同样包含在内。
相关日志
新的Visual Studio主题 (0)
Visual Studio 的好插件 - CodeRush Xpress (0)
Visual Studio 中的任务列表( ToDo List ) 支持 (0)
Thread of Day (0)
InfoQ:Visual Studio源代码控制包AnkhSVN 2.0介绍 (0)
Filed under: Code, Database 由 AntiGameZ
No Comments »