rksoftware

Visual Studio とか C# とかが好きです

.NET

CakeBuild 目次

最近 cakebuild というものを知りました。 そこで、少し確認してみた記録です。 最近 cakebuild というものを知りました。 cakebuild のインストール cake の実行 (build.ps1) でない NuGet なので cake をプロジェクトにインストールしてみた Mac で CakeBu…

CakeBuild でタスクの依存を扱う

Cake は C# Make なのでタスク間に依存関係が欲しいところです。「A タスクを実行するには B タスクがその前に実行されていなければならない」みたいな。 IsDependentOn メソッドで実現します。 ■ 今回実行するコード var target = Argument("target", "Defa…

CakeBuild でタスクの中でタスクを実行する

今回のスクリプトは良くないスクリプトだと、私のエンジニア勘が告げています。 ■ 今回実行するスクリプト var target = Argument("target", "Default"); Task("Default").Does(() =>{ Information("Hello World!"); }); Task("cs").Does(() => { Informatio…

CakeBuild でメソッドを書いて使う

Cake は C# でスクリプトが書けるのでメソッドも書いて使えます。 具体例は今回実行するスクリプトを見てください。 ■ 今回実行するスクリプト var target = Argument("target", "Default"); var number1 = Argument("number1", "123000"); var number2 = Ar…

CakeBuild で引数で数値を扱う

Cake は素人なのでこれで良いのかということろはあるのですが、こんなこともできましたということで。 ■ 引数の指定 Cake ではスクリプトの中で var number1 = Argument("number1", "123000"); のようなコードを書いて、実行時に Cake -number1=2540 のよう…

CakeBuild で引数を使う

Cake では実行するタスクを引数で指定することができます。 引数で指定するとスクリプトの次の部分の変数 target に与えた値が入ります。引数を与えていない場合は、次のコードで指定されているデフォルト値 Default が設定されます。 var target = Argument…

CakeBuild で実行するタスクを選択する(build.ps1)

Cake でスクリプト内に複数のタスクを定義して、選択して実行する方法です。 ■ スクリプト こんな感じに、Default と cs というタスクを書きます。 var target = Argument("target", "Default"); Task("Default").Does(() =>{ Information("Hello World!"); …

CakeBuild で実行するタスクを選択する(Cake.exe)

Cake でスクリプト内に複数のタスクを定義して、選択して実行する方法です。 ■ スクリプト こんな感じに、Default と cs というタスクを書きます。 var target = Argument("target", "Default"); Task("Default").Does(() =>{ Information("Hello World!"); …

Mac で CakeBuild を実行する

以前に Windows で直接 Cake.exe でスクリプトを実行してみました。 CakeBuild はマルチプラットフォームというなので、Mac でも動かしてみます。 ※私の手元の環境が Mac の上の VM に Windows が入っていて、ファイルが共有されているので。 Windows でイン…

NuGet なので cake をプロジェクトにインストールしてみた

結果、特に意味はありませんでした。 ■ やったこと Visual Studio で NuGet のパッケージの管理 から cake をインストール。 ■ .NET Framework プロジェクト エラーとなってインストールされません。 パッケージ 'Cake 0.33.0' をインストールできませんでし…

cake の実行 (build.ps1) でない

最近 cakebuild というものを知りました。 そしてインストールして、世界にあいさつしてみました。 ■ 簡単なまとめ ビルド実行の PowerShell スクリプト ( build.ps1 ) をダウンロードする cake スクリプトを作成する ビルド実行の PowerShell スクリプトを…

cakebuild のインストール

最近 cakebuild というものを知りました。 そして、世界にあいさつしてみた記事が↓です。 ■ 簡単なまとめ ビルド実行の PowerShell スクリプトをダウンロードする cake スクリプトを作成する ビルド実行の PowerShell スクリプトを実行する たったこれだけで…

最近 cakebuild というものを知りました。

最近 cakebuild というものを知りました。 https://cakebuild.net/ C# Make ということらしいです。C# でビルドスクリプトが書けるビルド自動化システムとのこと。 ■ とりあえず動かしてみる とりあえずまず動かしてみるにはこちらの手順。 https://cakebuil…

定義済みの型 'system.object' は定義、またはインポートされていません

定義済みの型 'system.object' は定義、またはインポートされていません Visual Studio 2019 で .NET Standard と .NET Core のプロジェクトを作ると次の様なコンパイルエラーが出ることがありました。 定義済みの型 'system.object' は定義、またはインポー…

ASP.NET Core MVC にコントローラーを追加する

以前に ASP.NET MVC にコントローラーを追加する記事を書きました。 簡単に言うと、ASP.NET MVC のカレントのディレクトリに Controller クラスの含まれる DLL を置いてしまうと作りによってはそれだけで、実行されている ASP.NET MVC プロジェクト自身に手…

.pdb ファイルを生み出さない

.NET ではビルドするとバイナリに拡張子 .pdb なファイルが生まれます。 例、コンソールアプリ .pdb なファイルが生まれている ■ .pdb ファイルを生まない Visual Studio でプロジェクトのプロパティで設定を変更します。 プロジェクトのプロパティ ビルド >…

.NET Core 3.0 の Publishing Single EXEs を試してみた

.NET Core 3.0 Preview 5 が案内されました。 この中で「Publishing Single EXEs」という項目がとても気になったので早速試してみました。 ■ コマンド >dotnet publish -r win10-x64 /p:PublishSingleFile=true と記事によると書くと良いらしいです。今回は …

Web サーバー 'IIS Express' に接続できませんでした。

ある時、何もしてないのに Web サーバー 'IIS Express' に接続できませんでした。 とエラーが表示され、ASP.NET プロジェクトがデバッグできなくなりました。 このエラーの原因と対する対処は多くあるようなので今回はその一つということになります。 ■ 何も…

Microsoft Learn でクライアントアプリや Web アプリを学べそうなもの

(2019/03/30 時点です) コンテンツは日々増えているようなので、これを読んでいるときには状況も変化しているかもしれません。 ■ Microsoft Learn オンラインでマイクロソフトのプロダクトを無料で学べます。 2019/03/30 時点で 360 の学習内容があります。…

dotnet core のインストールされていないない環境でも動作する dotnet core アプリケーションを作る

■ 結論 ・Windows 向けにはコンソールで次のようにタイプして発行します。 >dotnet publish -c Release --self-contained true -r win-x64 ・Linux 向けには >dotnet publish -c Release --self-contained true -r linux-x64 ・mac 向けには >dotnet publish…

.NET でのディレクトリの扱い方

.NET/C# でファイルパスを扱う次のようなコードを見たことは無いでしょうか? string directory = "directory1\\directory2\\"; string filename = "filename.ext"; string combined = ""; if (directory.EndsWith("\\")) { combined = directory.Substring(…

ClosedXML で作った Excel ファイルで DioDocs を試すライブラリを作りました

先日、ClosedXML で作った Excel ファイルが DioDocs で扱えない というタイトルの記事を書きました。 この組み合わせの環境で試すたびに、変換するのも面倒なので変換するライブラリを作りました。 大分雑な処理をしていますが、とりあえず試すのには使えて…

ClosedXML で作った Excel ファイルが DioDocs で扱えない

.NET では ClodesXML というライブラリで Excel ファイルを作ることができます。 他にも .NET で Excel を扱うライブラリとして、最近注目の DioDocs があります。 DioDocs について詳しくは次の素晴らしい記事を読んでください。 このブログでも、何度か試…

.NET Core デスクトップアプリケーションで DioDocs で作った PDF 帳票を印刷する

.NET Core 3.0 で Windows デスクトップアプリ(WPF/WinForms)が .NET Core で作れるようになりました。 しかし、実際にデスクトップアプリを作る際には様々なライブラリを導入することが多いものです。その中でもいわゆる帳票出力コンポーネントは日本では非…

.NET Core デスクトップアプリケーションで PDF 帳票を画面表示する

.NET Core 3.0 で Windows デスクトップアプリ(WPF/WinForms)が .NET Core で作れるようになりました。 しかし、実際にデスクトップアプリを作る際には様々なライブラリを導入することが多いものです。その中でもいわゆる帳票出力コンポーネントは日本では非…

.NET Core デスクトップアプリケーションから DioDocs を使って帳票を PDF 出力する

.NET Core 3.0 で Windows デスクトップアプリ(WPF/WinForms)が .NET Core で作れるようになりました。 しかし、実際にデスクトップアプリを作る際には様々なライブラリを導入することが多いものです。その中でもいわゆる帳票出力コンポーネントは日本では非…

XAML Islands の MediaPlayerElement 使用時に動画の再生が始まらない (WinForms)

Windows フォームアプリケーションで XAML Islands の MediaPlayerElement を使用している場合に、AutoPlay プロパティを True に設定していても動画の再生が始まらないことがありました。 ■ 原因? MediaPlayerElement の AutoPlay プロパティのプロパティ …

XAML Islands の MapControl 使用時に InvalidComObjectException 例外 (WinForms)

Windows フォームアプリケーションで XAML Islands の MapControl を使用している場合に、 System.Runtime.InteropServices.InvalidComObjectException 基になる RCW から分割された COM オブジェクトを使うことはできません。 という例外が発生することがあ…

XAML Islands の Windows Community Toolkit でラップされたコントロール (WinForms編)

XAML Islands についての公式ドキュメントの ラップされたコントロール というセクションで 6 つのコントロールが挙げられています。 ラップされたコントロール WebView WebViewCompatible InkCanvas InkToolbar MediaPlayerElement MapControl これらのコン…

XAML Islands の Windows Community Toolkit でラップされたコントロール (WPF編)

XAML Islands についての公式ドキュメントの ラップされたコントロール というセクションで 6 つのコントロールが挙げられています。 ラップされたコントロール WebView WebViewCompatible InkCanvas InkToolbar MediaPlayerElement MapControl これらのコン…