I’m trying to publish a database using Visual Studio, the project has no issues plus I downloaded the (Data storage and processing) toolset. Yet I keep getting SQL:72025 error every time I try to deploy the project.
SQL:72025: The referenced assembly .DLL is corrupt or invalid.
I get the same message if I try to build the project too. Now I noticed that usually when we click to publish under the solution explorer a window will pop out to configure the target database setting, I don’t get that window, instead, the project executes directly and fail.
There is nothing complex about the DB, it is just 4 tables and 1 post-deployment script
Also here is the script for the DB for your reference
CREATE TABLE [dbo].[RoomTypes] ( [Id] INT NOT NULL PRIMARY KEY IDENTITY, [Title] NVARCHAR(50) NOT NULL, [Description] NVARCHAR(MAX) NOT NULL, [RoomPrice] MONEY NOT NULL, ) CREATE TABLE [dbo].[RoomDetails] ( [Id] INT NOT NULL PRIMARY KEY IDENTITY, [RoomTypeID] INT NOT NULL, [RoomNumber] NVARCHAR(10) NOT NULL, [Available] BIT NOT NULL, CONSTRAINT [FK_RoomDetails_RoomTypes] FOREIGN KEY ([RoomTypeID]) REFERENCES RoomTypes(Id) ) CREATE TABLE [dbo].[GuestDetails] ( [Id] INT NOT NULL PRIMARY KEY IDENTITY, [FristName] NVARCHAR(50) NOT NULL, [LastName] NVARCHAR(50) NOT NULL, [Phone] NVARCHAR(50) NULL, [Email] NVARCHAR(50) NULL ) CREATE TABLE [dbo].[BookingDetails] ( [Id] INT NOT NULL PRIMARY KEY IDENTITY, [FromDate] DATETIME2 NOT NULL, [ToDate] DATETIME2 NOT NULL, [CheckIn] BIT NOT NULL DEFAULT 0, [TotalCost] MONEY NOT NULL, [GuestId] INT NOT NULL, [RoomId] INT NOT NULL CONSTRAINT [FK_BookingDetails_GuestDetails] FOREIGN KEY ([GuestId]) REFERENCES GuestDetails(Id), CONSTRAINT [FK_BookingDetails_RoomDetails] FOREIGN KEY ([RoomId]) REFERENCES RoomDetails(Id) ) /* Post-Deployment Script Template -------------------------------------------------------------------------------------- This file contains SQL statements that will be appended to the build script. Use SQLCMD syntax to include a file in the post-deployment script. Example: :r .myfile.sql Use SQLCMD syntax to reference a variable in the post-deployment script. Example: :setvar TableName MyTable SELECT * FROM [$(TableName)] -------------------------------------------------------------------------------------- */ if not exists (Select 1 from dbo.RoomTypes) begin insert into dbo.RoomTypes (Title,Description) values ('King Size Bed', 'A room with a king-size bed and a nice view'), ('Two Queen Size Bed', 'A room with two queen-size beds and a nice view'), ('Executive Suite', 'Two rooms, each with a King-size bed and a nice view'); end if not exists (select 1 from dbo.RoomDetails) begin declare @roomId1 int; declare @roomId2 int; declare @roomId3 int; select @roomId1 = Id from dbo.RoomTypes where Title = 'King Size Bed'; select @roomId2 = Id from dbo.RoomTypes where Title = 'Two Queen Size Bed'; select @roomId3 = Id from dbo.RoomTypes where Title = 'Executive Suite'; insert into dbo.RoomDetails (RoomNumber,RoomTypeID,Available) values ('101',@roomId1,1), ('102',@roomId1,1), ('202',@roomId1,1), ('105',@roomId2,1), ('205',@roomId2,1), ('505',@roomId3,1); end
I also checked the below post but the solution didn’t work for me plus the reason for getting the same error is different too. SQL:72025: The referenced assembly .DLL is corrupt or invalid
Could the error be because I am using parallels desktop app? The mac I am using is an intel mac.
Thank you all.
Advertisement
Answer
I just want to let everyone know that the issue I faced here, the “SQL:72025 ” was due fact that I was using Parallels Desktop for mac. I did the same thing on a windows PC and everything was completely fine. So if anyone out there is planning to use Desktop for mac to develop .net applications, although it’s a very powerful application, I personally suggest sticking with a windows PC to do so.