MVC错误中的外键

时间:2016-12-16 00:26:33

标签: asp.net-mvc foreign-key-relationship

首先,你好。我现在准备我的学期工作,我在MVC 5中遇到“外键”的问题。首先,我想发送我的代码然后我会更多地解释我的问题。

in Sepet.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace Donem_Odevi.Models.Data
{
    public class Sepet
    {
        [Key]
        public int SepetID { get; set; }

        [EmailAddress]
        public string UserEmail { get; set; }

        public int ID { get; set; }

        [ForeignKey("ID")]
        public Urunler UrunID { get; set; }


    }
}

现在是它的Urunler.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;


namespace Donem_Odevi.Models.Data
{
    public class Urunler
    {      

        [Key]        
        public int ID { get; set; }        
        public string UrunIsmi { get; set; }
        public byte[] UrunFoto { get; set; }
        public string Cinsiyet { get; set; }
        public int UrunFiyat { get; set; }
        //public int Adet { get; set; }
        //public int ToplamFiyat
        //{
        //    get { return Adet * UrunFiyat; }
        //}
    }
}

这就是我的观点

<tbody>
                        @foreach (var item in Model.sepet)
                        {
                        <tr>
                            <td class="cart_product">
                                <a href=""><img src="data:image/png;base64,@System.Convert.ToBase64String(item.UrunID.UrunFoto)" alt=""></a>
                            </td>
                            <td class="cart_description">
                                <h4><a href="">@item.UrunID.UrunIsmi</a></h4>
                                <p>@item.UrunID.Cinsiyet</p>
                            </td>
                            <td class="cart_price">
                                <p>@item.UrunID.UrunFiyat</p>
                            </td>
                            <td class="cart_quantity">
                                <div class="cart_quantity_button">
                                    <a class="cart_quantity_up" href=""> + </a>
                                    <input class="cart_quantity_input" type="text" name="quantity" value="1" autocomplete="off" size="2">
                                    <a class="cart_quantity_down" href=""> - </a>
                                </div>
                            </td>
                            <td class="cart_total">
                                <p class="cart_total_price">@item.UrunID.UrunFiyat</p>
                            </td>
                            <td class="cart_delete">
                                <a class="cart_quantity_delete" href=""><i class="fa fa-times"></i></a>
                            </td>
                        </tr>
                        }                        
                    </tbody>

我想这样做当我添加新产品(Urunler)时,它应该使用该ID,并且应该与Cart(Sepet)中的UrunID相匹配。然后我想在我的视图页面中显示它。我需要展示它。我怎样才能做到这一点?请帮帮我们......(我希望你理解我:)))例如;

我添加了一个新产品,那个ID是1. ID在Sepet中应该是1,我可以访问UrunID。谢谢你现在支持:)

1 个答案:

答案 0 :(得分:0)

试试这个:

public class Sepet
{
    [Key]
    public int SepetID { get; set; }

    [EmailAddress]
    public string UserEmail { get; set; }

    public int ID { get; set; }

    public virtual List<Urunler> Urunler { get; set; }
}

并在视野中:

@foreach (var item in Model.sepet.Urunler)
                    {
                    <tr>
                        <td class="cart_product">
                            <a href=""><img src="data:image/png;base64,@System.Convert.ToBase64String(item.UrunFoto)" alt=""></a>
                        </td>
                        <td class="cart_description">
                            <h4><a href="">@item.UrunIsmi</a></h4>
                            <p>@item.Cinsiyet</p>
                        </td>
                        <td class="cart_price">
                            <p>@item.UrunFiyat</p>
                        </td>
                        <td class="cart_quantity">
                            <div class="cart_quantity_button">
                                <a class="cart_quantity_up" href=""> + </a>
                                <input class="cart_quantity_input" type="text" name="quantity" value="1" autocomplete="off" size="2">
                                <a class="cart_quantity_down" href=""> - </a>
                            </div>
                        </td>
                        <td class="cart_total">
                            <p class="cart_total_price">@item.UrunFiyat</p>
                        </td>
                        <td class="cart_delete">
                            <a class="cart_quantity_delete" href=""><i class="fa fa-times"></i></a>
                        </td>
                    </tr>
                    }