日期:2014-05-17  浏览次数:20516 次

问一个ASPNET MVC的问题。。。关于model层的。。。知道的回答吧。。。。有理就给分了。。。。。给了好过年。。。。。。。

#region Model
private decimal _currentprice;
private DateTime _time;
/// <summary>
/// 当时时价
/// </summary>
public decimal CurrentPrice
{
set{ _currentprice=value;}
get{return _currentprice;}
}
/// <summary>
/// 时间
/// </summary>
public DateTime time
{
set{ _time=value;}
get{return _time;}
}


这个是我的Model,是针对数据表生成的Model。

在MVC中,添加数据是这样的,
@Html.TextBoxFor(m => m.CurrentPrice)
@Html.TextBoxFor(m => m.time)

这样子,看上去没有问题。。。

但是,一看生它的HMTL代码。。。


当时就傻了。。。这样就把数据库子段给暴露了啊。。。

就是别人看你的HMTL代码,就可以知道,你数据结构了。。这要不太安全是吧。。

大家什么解放方法昵。。。
------解决方案--------------------
有嘛子不安全的,字段又没有注释,就算我给你一个数据库,但没给你数据库字典(说明)之类的,你能看懂吗?
------解决方案--------------------
我还知道你电脑上windows的安装路径,你觉得会不安全不
------解决方案--------------------
引用:
Quote: 引用:

有嘛子不安全的,字段又没有注释,就算我给你一个数据库,但没给你数据库字典(说明)之类的,你能看懂吗?




一个好的命名,完全暴露了它的意思。。。。好多字段,任名,就完全可以知道它是什么意思。。


知道就知道咧,有什么啦,难道你还留SQL注入的后门给他不成?
------解决方案--------------------
Html.TextBoxFor
这个叫“脚手架”代码,说白了,就是让你快速先构建一个原型程序用的占位符。

你当然不应该在生产代码里面用。