Fluent Nhibernate Mapping für SQL Views
Ich benutze Fluent Nhibernate in asp.net mvc3 mit c #
Ich arbeite auf folgende Weise, um eine Klasse zu generieren und abzubilden
Kartierung
using FluentNHibernate.Mapping;
using Com.Web.Domain;
namespace Com.Web.Mapping
{
public class CompanyMap : ClassMap<Company>
{
public CompanyMap()
{
Id(x => x.id);
Map(x => x.Name);
}
}
}
Klasse
using System.Collections.Generic;
using System;
namespace Com.Web.Domain
{
public class Company
{
public virtual int id { get; set; }
public virtual string Name{get;set}
}
}
und in der Konfigurationsdatei
private static void InitializeSessionFactory()
{
_sessionFactory = Fluently.Configure()
.Database(MsSqlConfiguration.MsSql2008
.ConnectionString(local)
)
.Mappings(m =>
m.FluentMappings
.AddFromAssemblyOf<Company>())
.ExposeConfiguration(cfg => new SchemaExport(cfg)
.Create(false, false)) // this is intentionally set false , bcz i dont want to regenerate table when application starts every time
.BuildSessionFactory();
}
Jetzt kommt das Problem, dass ich eine Ansicht in SQL erstelle, die so aussieht
SQL-Ansicht
CREATE VIEW [FeaturedCompanies] AS
SELECT COUNT(Company.id) As Count FROM Company
WHERE Name='Alias'
Ich möchte diese Ansicht in meinem Code als eine verwenden, die ich verwende, aber wie kann ich das tun, ich habe viel gesucht, aber nichts auf Google gefunden
Bitte helfen Sie mir und vielen Dank im Voraus
was ist soweit ausprobiert
Klasse
public class FeaturedCompany
{
public virtual int id { get; set; }
public virtual int name { get; set; }
public virtual int count { get; set; }
}
Kartierung
public class FeaturedCompanyMap : ClassMap<FeaturedCompany>
{
public FeaturedCompanyMap()
{
Table("FeaturedCompanies");
ReadOnly();
Id(x => x.id);
Map(x => x.name);
Map(x => x.count);
}
}