在View ASP.NET MVC中基于外键从数据库中检索数据

时间:2017-10-19 18:20:22

标签: javascript asp.net asp.net-mvc razor

我正在尝试根据在另一个下拉列表中选择前面的元素来检索下拉列表中的数据。

型号:

AssetClass - >父类

GtiCapitalClassification

        public long GtiCapitalClassificationId { get; set; }
        public string GtiCapitalClassificationName { get; set; }
        public int TechVerticalId { get; set; }
        public bool Disable { get; set; }
        public long AssetClassFk { get; set; } // Foreign key to AssetClass

控制器:

ViewBag.AssetClasses = capDb.AssetClass.OrderBy(ac => ac.AssetClassName).ToList();
            ViewBag.GtiCapitalClassifications = capDb.GtiCapitalClassification.OrderBy(m => m.GtiCapitalClassificationName).ToList();

查看:

<div class="col-md-12">
        <div class="col-md-2">
            <select data-live-search="true" class="selectpicker" name="asset_class_ID" required onchange="setMaintenance(this.selectedOptions[0].attributes['maintenance_val'].value); setDepreciation(this.selectedOptions[0].attributes['depreciation_val'].value)">
                @foreach (var asset_class in ((List<AssetClass>)ViewBag.AssetClasses))
                {
                    <option depreciation_val="@(asset_class.Depreciation.Value)" maintenance_val="@(asset_class.HasMaintenance.Value?"true":"false")" onclick="setMaintenance('@(asset_class.HasMaintenance.Value?"true":"false")')" value="@asset_class.AssetClassId">@asset_class.AssetClassName</option>
                }
            </select>
        </div>
    </div>

    <div class="col-md-12 col-label">
        <div class="col-md-3">
            <label>GTI Capital Classification<span style="color:red"> *</span></label>
        </div>
    </div>
    <div class="col-md-12">
        <div class="col-md-2">
            <select data-live-search="true" class="selectpicker" name="Cap_Class_ID" onchange="changeSubClasses(this)" required id="CapClass">
                @foreach (var gti_class in ((List<GtiCapitalClassification>)ViewBag.GtiCapitalClassifications))
                {
                    <option value="@gti_class.GtiCapitalClassificationId">@gti_class.GtiCapitalClassificationName</option>
                }
            </select>
        </div>
    </div>

所以这里所有数据都来自表GtiCapitalClassification,我需要根据AssetClass的外键限制数据。任何HelpP!

0 个答案:

没有答案