小编jub*_*air的帖子

两种不同解决方案的循环依赖性

假设有两个.net项目不在同一解决方案下.ProjectA在solution1下,ProjectB在solution2下.ProjectA引用了ProjectB,ProjectB引用了ProjectA.ProjectA_Class和ProjectB_Class有两个类.ProjectA_Class创建ProjectB_Class的对象,ProjectB_Class创建ProjectA_Class的对象.

namespace ProjectB
{
    public class ProjectB_Class
    {
        public ProjectB_Class()
        {
            ProjectA_Class projA = new ProjectA_Class();
        }
    }
}

namespace ProjectA
{
    public class ProjectA_Class
    {
        public ProjectA_Class()
        {
            ProjectB_Class projB = new ProjectB_Class();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我对循环依赖感到困惑.是不是它在两个类之间创建了循环依赖,尽管它们不在同一个解决方案中?我们知道如果这两个项目都在同一个解决方案中,Visual Studio将不允许我们在ProjectB中引用ProjectA,在ProjectA中引用ProjectB,因为它创建了循环依赖.它是不是在两个项目之间创建循环依赖,尽管它们不在同一个解决方案中?假设,ProjectA中有一个C类,它创建了ProjectB_Class的对象,而ProjectB_Class不使用任何C类实例.它不是循环依赖项,因为ProjectA和ProjectB都有相互引用吗?

更新1 您能解释循环依赖的条件吗?

.net c# circular-dependency design-principles circular-reference

7
推荐指数
2
解决办法
1501
查看次数

提交按钮在asp.net mvc中不起作用

我有一个模型:

public class FormCreateModel
{
    public FormModel formInfo { get; set; }
    public FieldModel fieldInfo { get; set; }
    public InstitutionModel selectedInst { get; set; }
    public FormTypeModel selectedFormType { get; set; }
    public CategoryModel categoryInfo { get; set; }
    public List<InstitutionModel> institutions { get; set; }
    public List<FormTypeModel> FormTypes { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我为这个模型创建了一个强类型视图:

@using (Html.BeginForm()) 
{ 
    <p>
        @Html.LabelFor(lbl =>lbl.selectedInst.Institution_Name, "Institution Name :", new { @class="lblName"})
        @Html.DropDownListFor(drpdown => drpdown.selectedInst.Institution_Name, new SelectList(Model.institutions.Select(inst => inst.Institution_Name)),"-- select Institution--", new { @class …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc razor asp.net-mvc-4

5
推荐指数
1
解决办法
1万
查看次数