IT業界のすみっこ暮らし

ふと気がついたときの記録

IIS Expressで起動中のアプリケーション手動停止

Web form&デフォルトウェブサーバーの場合のIIS Expressを手動停止する方法

f:id:papamau:20181010112621p:plain

User default Web serverの場合の場合、Visual Studioの[Stop Debugging]を押下してもデバッグが停止するだけで、サーバー自体はまだ生きている。

f:id:papamau:20181010113045p:plain

f:id:papamau:20181010113420p:plain

f:id:papamau:20181010113526p:plain

インジケーターからIIS Expressを探して、起動中のアプリケーションをクローズする。

レガシーのMicrosoft.ACE.OLEDB.12.0対応

前提

Win10端末に移行した後、はじめてレガシーのエクセルファイルのアップロード部分のデバッグをしたら下記のよううなエラーが出て上手く動かない。

string strConn = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=
using (OleDbConnection conn = new OleDbConnection(strConn)) {
                conn.Open(); ★ここで落ちる

エラーメッセージ

'Microsoft.ACE.OLEDB.12.0' プロバイダーはローカルのコンピューターに登録されていません。

対応

作り変えることが出来れば一番いいけど、とりあえず動かしたいだけの場合は「Microsoft Access データベース エンジン 2010 再頒布可能コンポーネント」をインストールする。

Download Microsoft Access データベース エンジン 2010 再頒布可能コンポーネント from Official Microsoft Download Center

※私は「AccessDatabaseEngine.exe」をインストール。

独自ドメインは.com、.netなどを選んだ方が良い

ただ独自ドメインが欲しかった

はてなブログProに変更した後、独自ドメインを使いたくて独自ドメインを取得しました。

色々調べて一番安そうなお名前.comで独自ドメインを取得!

f:id:papamau:20180905161416p:plain ドメイン取るならお名前.com|ドメイン取得 最安値 1円!

※トップ画面の安いドメインに騙されちゃダメ!絶対!

pie001.comとpie001.siteを取得して、www.pie001.siteをこのブログのドメインに決めました。

このブログは検索結果からの訪問者が多いので、Google Search Consoleからpie001.hatenablog.com→www.pie001.siteへのサイト移転の手続きもばっちり!

↑今考えると絶対やってはいけないことだった、、、

まさかの更新料金が新規登録の約132倍!※

※2018/09/05の.site新規登録料金「30円(税別)」、更新料金「3,980円(税別)」

そういやドメインの更新でも事前にしておくかーとお名前.comにログインして、更新したいドメインと更新年数を選択した途端ビックリしました!

f:id:papamau:20180905162519p:plain

  • .comドメインの1年更新料金 : 1,280円(税別)
  • .siteドメインの1年更新料金 : 3,980円(税別)

(゚Д゚)ハァ?????????

ドメインは新規登録のときと更新のときの値段が違う

もう訳が分からなくて更新料金を調べたら、あった、一応説明はある。

www.onamae.com

f:id:papamau:20180905163416p:plain 安い値段でとりあえずドメイン登録させといて更新料金がっぽり戦略だったのか( ^ω^)・・・

結論

最初から.comや.netなど毎年の更新料金が新規登録料金とあまり変わらないドメインを取りましょう!

トップで格安を謳っているドメインは更新料金がヤバイ場合が多いよ!

ということでした。

また、私も上記の流れで.siteドメインは更新しないことを決めたので、このブログのurlもまた変更いたしました。現在のurlはblog.pie001.comになります。

pie001.hatenablog.com → www.pie001.site → blog.pie001.com ⇐イマココ

この流れで2度も変更したせいで、Google Search Consoleからサイト移転の手続きはしましたが上手くいかないのか、反映に時間がかかるのかここ数日の間、ブログのアクセス数はかなり落ちましたが、長期運営のためにはやむを得ない選択でした。

このブログはキーワード検索から辿りつく人が多いので、今はアクセスできない.siteの方に飛んでしまった方々には大変申し訳ないと思います。(httpは転送設定がされていますが、httpsは転送設定が出来ませんでした…)

お陰で久々にGoogle Search Consoleの使い方やWEBアプリを作るなら絶対.comか.netを使う!と決心することになりました。自分でドメインを取得して運営するのは初めてでとても苦し楽しかったでし。

格安なマイナーなドメインはもう見向きもしない!以上!

VS2017で.NET Framework 4.0 web formのPJを4.6.1にアップグレードする

1、Website Property Pages

Project -> [Property Pages] -> [Website Property Pages] -> [Build] f:id:papamau:20180828182934p:plain

Target Frameworkを「.NET Framework 4」から「.NET Framwork 4.6.1」に変更して保存。

再ビルドして他の影響がないことを確認する。

.NET Framework 4 ⇒ 4.6.1 に変更した後、異常にエラーが出まくる場合

一気にバージョンアップを行わないで、互換性が高いバージョンの間のバージョンアップを順番に試してみる。

  • 4 -> 4.5
  • 4.5 -> 4.6
  • 4.6 -> 4.6.1

.NETバージョンアップ - マイクロソフト系技術情報 Wiki

2、以下のようにGlobalやApp_Codeに関するエラーが表示される場合の対策

error 1 - The type 'Global' is defined in an assembly that is not referenced. You must add a reference to assembly 'App_Code.****, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.
error 2 - Cannot convert type 'System.Web.HttpApplication' to 'ASP.global_asax'

Global.asaxが存在する場合、以下のコードをGlobal.asaxに追記する

<script RunAt="server">
    protected void Application_Start() {
    }

    protected void Application_Start(object sender, EventArgs e) {
    }

    protected void Application_OnStart() {
    }
    protected void Application_OnStart(object sender, EventArgs e) {
    }
</script>

参考

Build errors only when sources open

The type 'Global' is defined in an assembly that is not referenced errors in VS2015-黑暗執行緒

3、バージョンアップに影響するNugetパッケージをreinstall

.NETバージョンアップをすることで影響が出るNugetパッケージの場合、packages.configに以下のように表示される。

packages.config (reinstall前)

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="MySql.Data" version="6.9.8" targetFramework="net40" requireReinstallation="true" />
  <package id="Newtonsoft.Json" version="7.0.1" targetFramework="net40" requireReinstallation="true" />
</packages>

requireReinstallationが付いてるpackageは.NETバージョンアップに影響するパッケージだから再インストールしてくださいの意味なので、同じバージョンを新しくインストールし直す。

c# - Nuget: What is the purpose of requireReinstallation tag in packages.config - Stack Overflow

Reinstalling and Updating NuGet Packages | Microsoft Docs

Update-Packageコマンドを使ってNugetパッケージをreinstallする

[Tool] -> [Nuget Package Manager] -> [Package Manager Console]

Update-Package -Id MySql.Data –reinstall
Update-Package -Id Newtonsoft.Json –reinstall

packages.config (reinstall後)

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="MySql.Data" version="6.9.8" targetFramework="net461" />
  <package id="Newtonsoft.Json" version="7.0.1" targetFramework="net461" />
</packages>


プライバシーポリシー