2017年12月5日火曜日

IISとIIS Expressの違いについて>Visual Studio+IIS+SQL Serverで開発する場合の組み合わせを検証して見ました。

Visual Studio+IIS+SQL Serverで開発する場合の組み合わせを検証して見ました。
参考に。
Visual Studio Web Server Database VSが一般ユーザの場合 VSが管理者の場合
2015 IIS SQL Server localDB ×エラー※3※4 ×※3⇒ただの警告だから無視する
※10⇒DBをlocalDBからSQLServerへ変更する
SQL Server ×※4
IIS Express SQL Server localDB
SQL Server
2017 IIS SQL Server localDB ×エラー※3※4 ×※3⇒ただの警告だから無視する
※7⇒DBをlocalDBからSQLServerへ変更する
SQL Server ×※4 ○※6⇒※6はコーディングのバグ、※7
IIS Express SQL Server localDB ○※1 ○※6
※6はコーディングのバグ
SQL Server ○※8

※8:SSMSでセッションを切ってあげると動作する。容赦ないセッションの削除バッチを使うといい。
?:本来は動作するはず

------------------------------------------------------------

※1:これは発生しても自然に治った。はて?
---------------------------
Microsoft Visual Studio
---------------------------
ID 22852 のプロセスは実行されていません。
---------------------------
OK   
---------------------------

Microsoft Visual Studio ID 22852 のプロセスは実行されていません。

※2
---------------------------
Microsoft Visual Studio
---------------------------
プログラム 'http://localhost:83/MvcModel/Admin/Home/Index' を開始できません。



リモート プロシージャ コールに失敗し、実行されませんでした。


---------------------------
OK   
---------------------------

※3
DBが SQL Server Express LocalDBだとIISと組み合わせて使用する警告が発生する

※4
---------------------------
Microsoft Visual Studio
---------------------------
Web サーバーでデバッグを開始できません。起動された URL に一致する Web サイトは IIS の一覧に含まれていません。

詳細については [ヘルプ] をクリックしてください。
---------------------------
OK   ヘルプ   
---------------------------

※5
---------------------------
Microsoft Visual Studio
---------------------------
Web サーバーでデバッグを開始できません。リモート サーバーがエラーを返しました: (403) 使用不可能

詳細については [ヘルプ] をクリックしてください。
---------------------------
OK   ヘルプ   
---------------------------

※6
HomeControllerが複数見つかるえらーが発生

※7
System.Data.SqlClient.SqlException が発生しました
  HResult=0x80131904
  Message=SQL Server への接続を確立しているときにネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないかアクセスできません。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。 (provider: SQL Network Interfaces, error: 50 - Local Database Runtime エラーが発生しました。LocalDB インスタンスを開始する際にエラーが発生しました: SQL Server プロセスを開始できませんでした。
)
  Source=.Net SqlClient Data Provider
  スタック トレース:
<例外のスタック トレースを評価できません>


※8

System.Data.SqlClient.SqlException が発生しました
  HResult=0x80131904
  Message=データベース "MvcModel" は現在使用中なので削除できません。
  Source=.Net SqlClient Data Provider
  スタック トレース:
<例外のスタック トレースを評価できません>


※9
ALTER TABLE [dbo].[Key2Table] ADD CONSTRAINT [PK_dbo.Key2Table] PRIMARY KEY ([Key1], [Key22])
System.Data.SqlClient.SqlException (0x80131904): オブジェクト名 'dbo.Key2Table' およびインデックス名 'PK_dbo.Key2Table' に重複したキーが見つかったので、CREATE UNIQUE INDEX ステートメントは終了しました。重複したキーの値は (1, 0) です。
制約またはインデックスを作成できませんでした。以前のエラーを調べてください。
ステートメントは終了されました。
   場所 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   場所 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   場所 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   場所 System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   場所 System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite)
   場所 System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
   場所 System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   場所 System.Data.Entity.Infrastructure.Interception.DbCommandDispatcher.<NonQuery>b__0(DbCommand t, DbCommandInterceptionContext`1 c)
   場所 System.Data.Entity.Infrastructure.Interception.InternalDispatcher`1.Dispatch[TTarget,TInterceptionContext,TResult](TTarget target, Func`3 operation, TInterceptionContext interceptionContext, Action`3 executing, Action`3 executed)
   場所 System.Data.Entity.Infrastructure.Interception.DbCommandDispatcher.NonQuery(DbCommand command, DbCommandInterceptionContext interceptionContext)
   場所 System.Data.Entity.Internal.InterceptableDbCommand.ExecuteNonQuery()
   場所 System.Data.Entity.Migrations.DbMigrator.ExecuteSql(MigrationStatement migrationStatement, DbConnection connection, DbTransaction transaction, DbInterceptionContext interceptionContext)
   場所 System.Data.Entity.Migrations.Infrastructure.MigratorLoggingDecorator.ExecuteSql(MigrationStatement migrationStatement, DbConnection connection, DbTransaction transaction, DbInterceptionContext interceptionContext)
   場所 System.Data.Entity.Migrations.DbMigrator.ExecuteStatementsInternal(IEnumerable`1 migrationStatements, DbConnection connection, DbTransaction transaction, DbInterceptionContext interceptionContext)
   場所 System.Data.Entity.Migrations.DbMigrator.ExecuteStatementsWithinTransaction(IEnumerable`1 migrationStatements, DbTransaction transaction, DbInterceptionContext interceptionContext)
   場所 System.Data.Entity.Migrations.DbMigrator.ExecuteStatementsWithinNewTransaction(IEnumerable`1 migrationStatements, DbConnection connection, DbInterceptionContext interceptionContext)
   場所 System.Data.Entity.Migrations.DbMigrator.ExecuteStatementsInternal(IEnumerable`1 migrationStatements, DbConnection connection, DbInterceptionContext interceptionContext)
   場所 System.Data.Entity.Migrations.DbMigrator.ExecuteStatementsInternal(IEnumerable`1 migrationStatements, DbConnection connection)
   場所 System.Data.Entity.Migrations.DbMigrator.<>c__DisplayClass30.<ExecuteStatements>b__2e()
   場所 System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.<>c__DisplayClass1.<Execute>b__0()
   場所 System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute[TResult](Func`1 operation)
   場所 System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute(Action operation)
   場所 System.Data.Entity.Migrations.DbMigrator.ExecuteStatements(IEnumerable`1 migrationStatements, DbTransaction existingTransaction)
   場所 System.Data.Entity.Migrations.DbMigrator.ExecuteStatements(IEnumerable`1 migrationStatements)
   場所 System.Data.Entity.Migrations.Infrastructure.MigratorBase.ExecuteStatements(IEnumerable`1 migrationStatements)
   場所 System.Data.Entity.Migrations.DbMigrator.ExecuteOperations(String migrationId, VersionedModel targetModel, IEnumerable`1 operations, IEnumerable`1 systemOperations, Boolean downgrading, Boolean auto)
   場所 System.Data.Entity.Migrations.DbMigrator.AutoMigrate(String migrationId, VersionedModel sourceModel, VersionedModel targetModel, Boolean downgrading)
   場所 System.Data.Entity.Migrations.Infrastructure.MigratorLoggingDecorator.AutoMigrate(String migrationId, VersionedModel sourceModel, VersionedModel targetModel, Boolean downgrading)
   場所 System.Data.Entity.Migrations.DbMigrator.Upgrade(IEnumerable`1 pendingMigrations, String targetMigrationId, String lastMigrationId)
   場所 System.Data.Entity.Migrations.Infrastructure.MigratorLoggingDecorator.Upgrade(IEnumerable`1 pendingMigrations, String targetMigrationId, String lastMigrationId)
   場所 System.Data.Entity.Migrations.DbMigrator.UpdateInternal(String targetMigration)
   場所 System.Data.Entity.Migrations.DbMigrator.<>c__DisplayClassc.<Update>b__b()
   場所 System.Data.Entity.Migrations.DbMigrator.EnsureDatabaseExists(Action mustSucceedToKeepDatabase)
   場所 System.Data.Entity.Migrations.Infrastructure.MigratorBase.EnsureDatabaseExists(Action mustSucceedToKeepDatabase)
   場所 System.Data.Entity.Migrations.DbMigrator.Update(String targetMigration)
   場所 System.Data.Entity.Migrations.Infrastructure.MigratorBase.Update(String targetMigration)
   場所 System.Data.Entity.Migrations.Design.ToolingFacade.UpdateRunner.Run()
   場所 System.AppDomain.DoCallBack(CrossAppDomainDelegate callBackDelegate)
   場所 System.AppDomain.DoCallBack(CrossAppDomainDelegate callBackDelegate)
   場所 System.Data.Entity.Migrations.Design.ToolingFacade.Run(BaseRunner runner)
   場所 System.Data.Entity.Migrations.Design.ToolingFacade.Update(String targetMigration, Boolean force)
   場所 System.Data.Entity.Migrations.UpdateDatabaseCommand.<>c__DisplayClass2.<.ctor>b__0()
   場所 System.Data.Entity.Migrations.MigrationsDomainCommand.Execute(Action command)
ClientConnectionId:15235e99-b98f-4952-b7c6-3713e4f35bd3
Error Number: 1505、State: 1、Class: 16
オブジェクト名 'dbo.Key2Table' およびインデックス名 'PK_dbo.Key2Table' に重複したキーが見つかったので、CREATE UNIQUE INDEX ステートメントは終了しました。重複したキーの値は (1, 0) です。
制約またはインデックスを作成できませんでした。以前のエラーを調べてください。
ステートメントは終了されました。
PM> 

※10
SQL Server への接続を確立しているときにネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないかアクセスできません。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。 (provider: SQL Network Interfaces, error: 50 - Local Database Runtime エラーが発生しました。LocalDB インスタンスを開始する際にエラーが発生しました: SQL Server プロセスを開始できませんでした。)

0 件のコメント:

コメントを投稿