Skip to main content

Delete a table from database having many dependency with others table using Entity framework

 Here is a sample C# code Snippet  :


string foreignKeyTableInfo = string.Format("EXEC sp_fkeys '{0}'", "Company");

                IQueryable<ForeignKeyTableReference> fkTable = _dbContext.Database.SqlQuery<ForeignKeyTableReference>(foreignKeyTableInfo).AsQueryable();

                //L

                string disableFkTemplate = "ALTER TABLE [{{tableName}}] NOCHECK CONSTRAINT [{{FoerignKeyName}}];";

                string enableFkTemplate = "ALTER TABLE [{{tableName}}] CHECK CONSTRAINT [{{FoerignKeyName}}];";

                //END



                string disable_template = "ALTER TABLE [{{tableName}}] NOCHECK CONSTRAINT ALL;";

                string enable_template = "ALTER TABLE [{{tableName}}] WITH CHECK CHECK CONSTRAINT ALL;";

                var dependencyList = fkTable.ToList();

                string dFquery = "";


                //disable_template foreign key contrstraint

                foreach (var fk in dependencyList)

                {

                    string dFquerySql = disableFkTemplate;

                    dFquerySql = dFquerySql.Replace("{{tableName}}", fk.FKTABLE_NAME);

                    dFquerySql = dFquerySql.Replace("{{FoerignKeyName}}", fk.FK_NAME);

                    dFquery = dFquery + dFquerySql + Environment.NewLine;


                }


                _dbContext.Database.CommandTimeout = 120;


                int res = _dbContext.Database.ExecuteSqlCommand(dFquery);


                // Remove from Company 

                _dbContext.Database.ExecuteSqlCommand(string.Format("DELETE  FROM Company WHERE ID='{0}'", companyId));

                //enable_template foreign key contrstraint

 

                string enableQuery = "";

                foreach (var fk in dependencyList)

                {

                    string eFslq = enableFkTemplate;

                    eFslq = eFslq.Replace("{{tableName}}", fk.FKTABLE_NAME);

                    eFslq = eFslq.Replace("{{FoerignKeyName}}", fk.FK_NAME);

                    enableQuery = enableQuery + eFslq + Environment.NewLine;


                }


                int res1 = _dbContext.Database.ExecuteSqlCommand(enableQuery);



Comments

Popular posts from this blog

update your package-lock.json according to what you have specified in the package.json file

  The objective of the   npm update   command is to update your   package-lock.json   according to what you have specified in the   package.json   file. This is the normal behavior. If you want to update your package.json file, you can use  npm-check-updates :  npm install -g npm-check-updates . You can then use these commands: ncu  Checks for updates from the package.json file ncu -u  Update the package.json file npm update --save  Update your package-lock.json file from the package.json file

Limit Upload File Type Extensions ASP.NET MVC 5

  //-----------------------------------------------------------------------    // <copyright file="AllowExtensionsAttribute.cs" company="None">    //     Copyright (c) Allow to distribute this code and utilize this code for personal or commercial purpose.    // </copyright>    // <author>Asma Khalid</author>    //-----------------------------------------------------------------------       namespace  ImgExtLimit.Helper_Code.Common   {        using  System;        using  System.Collections.Generic;        using  System.ComponentModel.DataAnnotations;        using  System.Linq;      ...

Referenced assembly does not have a strong name

  Steps to create strong named assembly Step 1 : Run visual studio command prompt and go to directory where your DLL located.   For Example my DLL located in  D:/hiren/Test.dll Step 2 : Now create  il file using below command.    D:/hiren> ildasm /all /out=Test.il Test.dll   (this command generate code library) Step 3 : Generate new Key for sign your project.    D:/hiren> sn -k mykey.snk Step 4 : Now sign your library using ilasm command.    D:/hiren> ilasm /dll /key=mykey.snk Test.il so after this step your assembly contains strong name and signed. Jjust add reference this new assembly in your project and compile project its running now. codeproject.com/Tips/341645/Referenced-assembly-does-not-have-a-strong-name