Так что я думаю, что единственный реальный способ сделать кросс-запросы к базе данных - это создать вид на сервере.

ю, что было много вопросов о том, как Entity Framework выполняет запросы к нескольким базам данных на одном и том же сервере, размещенном напереполнение стека, В основном ответ, кажется, «нет», и эта ссылка отпуть назад в 2008 году упоминается, Тем не менее, Entity Framework все время меняется и с CTP5, мне интересно, если ответ все тот же - что вы не можете сделать это, или вы можете сделать это, если вы вручную редактируете файл EDMX, или у вас есть использовать представления. Одна только эта функция - причина, по которой я все еще привязан к Linq-to-SQL, так как у нас есть несколько баз данных SQL Server 2008 на одном сервере, и нам необходимо выполнять запросы к ним. Загрязнение наших баз данных сотнямиselect * Представления не вариант, и с разработкой кода сначала у меня нет edmx-файла для редактирования. Я играл с базой данных пабов, чтобы посмотреть, смогу ли я куда-нибудь добраться, но я застрял. Какие-либо предложения?

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.ComponentModel.DataAnnotations;
using System.Data.Entity;
using System.Data.Entity.ModelConfiguration;

namespace DbSchema {
    public class Employee {
        [Key]
        public string ID { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public short JobID { get; set; }
        public Job Job { get; set; }
    }

    public class Job {
        [Key]
        public short ID { get; set; }
        public string Description { get; set; }
    }

    public class PubsRepository : DbContext {
        public DbSet<Employee> Employee { get; set; }
        public DbSet<Job> Job { get; set; }

        protected override void OnModelCreating(ModelBuilder modelBuilder) {
            // employee
            var eeMap = modelBuilder.Entity<Employee>();
            eeMap.ToTable("employee", "dbo"); // <-- how do I reference another database?
            eeMap.Property(e => e.ID).HasColumnName("emp_id");
            eeMap.Property(e => e.FirstName).HasColumnName("fname");
            eeMap.Property(e => e.LastName).HasColumnName("lname");
            eeMap.Property(e => e.JobID).HasColumnName("job_id");

            // job
            var jobMap = modelBuilder.Entity<Job>();
            jobMap.Property(j => j.ID).HasColumnName("job_id");
            jobMap.Property(j => j.Description).HasColumnName("job_desc");
        }

        public List<Employee> GetManagers() {
            var qry = this.Employee.Where(x => x.Job.Description.Contains("manager"));
            Debug.WriteLine(qry.ToString());
            return qry.ToList(); // <-- error here when referencing another database!
        }
    }
}

Ответы на вопрос(4)

Ваш ответ на вопрос