C# 显示已登录用户的数据

C# 显示已登录用户的数据,c#,asp.net-mvc,data-binding,C#,Asp.net Mvc,Data Binding,我有一个叫做肾上腺模型的模型,就是这样: namespace App_User.Models { public class AdresContext: DbContext { public AdresContext() : base("DefaultConnection") { } public DbSet<UserProfile> UserProfiles {get; set;}

我有一个叫做肾上腺模型的模型,就是这样:

namespace App_User.Models
{
public class AdresContext: DbContext
{
        public AdresContext()
            : base("DefaultConnection")
        {
        }

        public DbSet<UserProfile> UserProfiles {get; set;}
        public DbSet<AdresModels> AdresModel { get; set; }
        public DbSet<RachunekModels> RachunekModel { get; set; } 
}


[Table("Adres")]
public class AdresModels
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int AdresID { get; set;}
public virtual int  UserId { get; set; }
[ForeignKey("UserId")]
public virtual UserProfile User {get; set;}
    public string Miejscowosc { get; set; }
    public string Nr_domu { get; set; }
    public string Ulica { get; set; }
    public string Nr_mieszkania { get; set; }


}

}
namespace App\u User.Models
{
公共类地址上下文:DbContext
{
公共地址上下文()
:base(“默认连接”)
{
}
公共数据库集用户配置文件{get;set;}
公共DbSet AdresModel{get;set;}
公共DbSet-RachunekModel{get;set;}
}
[表(“Adres”)]
公共类肾上腺模型
{
[关键]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
公共int AdresID{get;set;}
公共虚拟int用户标识{get;set;}
[外键(“用户ID”)]
公共虚拟用户配置文件用户{get;set;}
公共字符串Miejscowosc{get;set;}
公共字符串Nr_domu{get;set;}
公共字符串{get;set;}
公共字符串Nr_mieszkania{get;set;}
}
}
我的看法是:

    <td>
        @Html.DisplayFor(modelItem => item.User.UserName)
    </td>
    <td>
        @Html.DisplayFor(modelItem => item.Miejscowosc)
    </td>
    <td>
        @Html.DisplayFor(modelItem => item.Nr_domu)
    </td>
    <td>
        @Html.DisplayFor(modelItem => item.Ulica)
    </td>
    <td>
        @Html.DisplayFor(modelItem => item.Nr_mieszkania)
    </td>

@DisplayFor(modelItem=>item.User.UserName)
@DisplayFor(modeleItem=>item.Miejscowosc)
@DisplayFor(modeleItem=>item.Nr\u domu)
@DisplayFor(modelItem=>item.Ulica)
@DisplayFor(modelItem=>item.Nr_mieszkania)
现在我只想在UserName==logged user的视图中显示这个特定的数据。 我不知道我到底需要在哪里进行更改才能使其正常工作

我还有一个问题

我在RachunekModels中有AdresModels和RachunekModels我有来自AdresModels的外键,我想将记录的用户ID与Adres关联,然后为记录的用户显示来自Rachunek的数据

public class RachunekContext : DbContext
{
        public RachunekContext()
            : base("DefaultConnection")
        {
        }
        public DbSet<UserProfile> UserProfiles {get; set;}
        public DbSet<AdresModels> AdresModel { get; set; }
        public DbSet<RachunekModels> RachunekModel { get; set; } 
}
[Table("Rachunek")]
public class RachunekModels
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int RachunekID { get; set;}

public virtual int AdresID { get; set; }
[ForeignKey("AdresID")]
public virtual AdresModels Adreses { get; set; }

}
公共类RachunekContext:DbContext
{
公共广播频道Context()
:base(“默认连接”)
{
}
公共数据库集用户配置文件{get;set;}
公共DbSet AdresModel{get;set;}
公共DbSet-RachunekModel{get;set;}
}
[表(“Rachunek”)]
公共类轴模型
{
[关键]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
公共整数{get;set;}
公共虚拟int AdresID{get;set;}
[外键(“AdresID”)]
公共虚拟地址模型地址{get;set;}
}
我真的不知道如何把这联系起来

我不知道我到底需要在哪里进行更改才能使其正常工作

在负责查询模型的控制器操作中。在这里,您应该对查询应用筛选器,以便仅检索符合以下条件的元素:

[Authorize]
public ActionResult Index()
{
    string loggedUser = User.Identity.Name;
    var model = db.AdresModel.Where(x => x.User.UserName == loggedUser).ToList();
    return View(model);
}

没错,这就是我要找的。THXBut我稍后再添加一个问题。@z48o0,如果您还有其他问题,请开始一个新的线程。不要用一个线程问多个问题,因为这会产生很多噪音,而且不是StackOverflow的使用方式。