首页新闻找找看学习计划

DTO不同文件夹下的名字相同的Mode,会被错误引用

0
悬赏园豆:10 [已解决问题] 解决于 2019-06-28 15:03

DTO中有A文件夹下的cMode,B文件夹下的cMode,这两个mode虽然名字相同,但内容不同,现视图A引用A文件夹下的cMode,B视图引用B文件夹下的cMode,程序跑起来的结果是,都调用了A文件夹下的cMode。这是为什么??个人猜想是程序会由上到下的搜寻第一个名字匹配的Mode???

MVC
问题补充:

@using DataDto.S.GridMode//这条就是mode的引用
@model DataDto.S.FormMode.FM_SA
@(Html.TY().DataGrid()
.ListType(typeof(GM_SA))//这个就是引用的mode
******************************************B视图***********************************
@using DataDto.Sy//这个就是mode的引用
@model DataDto.QueryMode.QM_SA
@(Html.TY().DataGrid()
.ListType(typeof(GM_SA))//所使用的mode
)

但乱红尘的主页 但乱红尘 | 菜鸟二级 | 园豆:410
提问于:2019-06-05 13:39

是 ASP.NET MVC 吗?

dudu 5个月前

@dudu: 是的

但乱红尘 5个月前
< >
分享
最佳答案
1

“B视图引用B文件夹下的cMode”,建议在引用时加上完整的命名空间

收获园豆:10
dudu | 高人七级 |园豆:41286 | 2019-06-05 13:53

添加了,我看了也没有双引用,都是各自引用各自的,但就是会都使用同一个cMode,如果我将俩个cMode的名字修改成不一样的,就不会有问题了

但乱红尘 | 园豆:410 (菜鸟二级) | 2019-06-05 14:00

@但乱红尘: 你是怎么引用的?建议提供一下相关代码

dudu | 园豆:41286 (高人七级) | 2019-06-05 14:02

@dudu: 大佬,代码发你啦

但乱红尘 | 园豆:410 (菜鸟二级) | 2019-06-05 14:16

@但乱红尘: 不是改@using,是改@model

dudu | 园豆:41286 (高人七级) | 2019-06-05 14:19

@dudu: @model是对应列表上的搜索框什么的,列表的model就是从using DataDto中取的啊,其他页面都可以这样啊

但乱红尘 | 园豆:410 (菜鸟二级) | 2019-06-05 14:26

@但乱红尘: 试试改为 .ListType(typeof(Model))

dudu | 园豆:41286 (高人七级) | 2019-06-05 14:34

@dudu: 不行,会报错,而且,.ListType(typeof(Model))这写Model的话,上面的@using TY。。GirdMode就变灰了(未使用状态)

但乱红尘 | 园豆:410 (菜鸟二级) | 2019-06-05 14:41

@但乱红尘: 报什么错?

dudu | 园豆:41286 (高人七级) | 2019-06-05 14:49

@dudu: 缺少引用

但乱红尘 | 园豆:410 (菜鸟二级) | 2019-06-05 14:50

@但乱红尘: 写的是 Model 吗?

dudu | 园豆:41286 (高人七级) | 2019-06-05 14:55

@dudu: .ListType(typeof(Model))就是这样写的啊

但乱红尘 | 园豆:410 (菜鸟二级) | 2019-06-05 14:58

@但乱红尘: B视图中改为 .ListType(typeof(DataDto.QueryMode.GM_SA)) 试试

dudu | 园豆:41286 (高人七级) | 2019-06-05 15:05

@dudu: B视图GM_SA的引用不是QueryMode,是DataDto.Sy,所以.ListType(typeof(DataDto.QueryMode.GM_SA))是不对的,QueryMode.QM_SA是列表关键词的model,QueryMode.QM_SA的model内容:/// <summary>
/// 关键词
/// </summary>
[Display(Name = "关键词:")]
public string KeyWord { get; set; }

但乱红尘 | 园豆:410 (菜鸟二级) | 2019-06-05 15:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册