es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

ASP.NET MVC “Código Primero”, clave foránea a tabla de Sharepoint.

Quizás alguien puede ayudarme con mi problema:

Problema:

Estoy trabajando con ASP.NET MVC y he creado un sitio web simple con una base de datos detrás de él. En esta base de datos tengo diferentes tablas, pero el ID de la tabla superior jerárquica debe apuntar a una tabla de Sharepoint. Allí tengo mis datos principales y mi base de datos debe tener una clave externa al ID en esta tabla. ¿Es esto posible y si es así, cómo funciona?

Necesidad:

Para responder a la pregunta de por qué necesito esta conexión con la tabla de Sharepoint, es porque ese es el único lugar donde se actualizan los datos y quiero que los datos en mi base de datos contengan los nuevos datos para que cuando agregue datos a mi base de datos, pueda hacer referencia a nuevos IDs sin tener que agregarlos manualmente.

Quizás alguien tenga una pista para mí o pueda referirse a otro recurso que incluya esta información, gracias (^ ▽ ^)

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Solución

    Sí, es posible crear una relación de clave externa entre su base de datos ASP.NET MVC y una tabla de Sharepoint. Puede lograr esto creando un servidor vinculado en su instancia de SQL Server que haga referencia a la tabla de Sharepoint.

    Aquí tiene los pasos que puede seguir:

    1. Abra SQL Server Management Studio y conéctese a su instancia de SQL Server que aloja su base de datos ASP.NET MVC.
    2. En el Explorador de objetos, haga clic con el botón derecho en Objetos de servidor y seleccione Nuevo -> Servidor vinculado.
    3. En la ventana Nuevo servidor vinculado, ingrese un nombre para el servidor vinculado (por ejemplo, Sharepoint), seleccione el proveedor de SQL Server y especifique la fuente de datos utilizando el nombre del servidor o la dirección IP de Sharepoint.
    4. En Seguridad, seleccione la opción “Se realizará utilizando este contexto de seguridad” e ingrese el inicio de sesión y la contraseña para la base de datos de Sharepoint.
    5. Haga clic en Aceptar para crear el servidor vinculado.

    Una vez que haya creado el servidor vinculado, ahora puede hacer referencia a la tabla de Sharepoint en su base de datos ASP.NET MVC. En su enfoque de código primero de Entity Framework, puede agregar la relación de clave externa entre las dos tablas mediante el siguiente código:

    public class MyDbContext : DbContext
    {
        public DbSet<mytable> MyTables { get; set; }
    
        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            base.OnModelCreating(modelBuilder);
    
            modelBuilder.Entity<mytable>()
                .HasRequired(m => m.SharepointTable)
                .WithMany()
                .Map(m => m.MapKey("SharepointTableId"));
        }
    }
    
    public class MyTable
    {
        public int Id { get; set; }
        public int SharepointTableId { get; set; }
        public virtual SharepointTable SharepointTable { get; set; }
    }
    
    public class SharepointTable
    {
        public int Id { get; set; }
    }
    

    En este ejemplo, la clase MyTable tiene una relación de clave externa con la clase SharepointTable, y se utiliza el campo SharepointTableId como clave externa en la tabla MyTable.

    Espero que esto le ayude a resolver su problema. ¡Buena suerte!

Comments are closed.