LoginSignup
9
8

More than 3 years have passed since last update.

C#でドキュメントつきライブラリプロジェクトを作成する

Posted at

この記事は、シリーズ記事「「C#のライブラリプロジェクトをGitLabにpushしたら自動でDLLが書き出されてついでにDocFXで作成されたドキュメントがCloud Run上にデプロイされる」っていうやつをやる」の一部です。

はじめに

最近 Adobe Animate の代わりに Unity を使用してUIデモを作成する事が多くなってきました。Unity に限った事ではないのですが、プログラミングをしていると使いまわせそうな機能はライブラリとしてまとめたくなってきます。
Unity は C# を使用して .Net Framework 4.5 相当の機能であれば使用できるので、 Visual Studio を使用して DLL を作成すればライブラリをワンファイルで管理する事が可能になります。

DLLがあるだけでは使ってもらえない

ライブラリ化するという事は汎用化するという事なので、自分以外の人にも使ってもらえるはずです。
が、ただ DLL があるだけではどう使ったら良いのか分からないので、中々他の人には使ってもらえません。

今回は、 Visual Studio を使用して DLL を作成し、さらに DocFX というパッケージを使ってライブラリのドキュメントまで書き出してみます。

DocFXについて

ここではあまり多くは語らないので、以下の公式ドキュメントを見てみて下さい。

手順

実際の手順をキャプチャを交えて紹介していきます。

1.プロジェクト作成

まずはプロジェクトを作成します。
今回はUnity用のライブラリ想定なので、.Net Framework のライブラリを作成しています。

bc0ea98f-332a-ae08-8e47-8063eba805d7.png

名称は何でも構いません。

fcddaaa8-ffe5-b6fa-2361-401e4de8006e.png

作成が完了すると、以下のようなおなじみの画面になると思います。

3.png

2.DocFXを追加

ドキュメント書き出し用に、参照からNuGetパッケージを追加します。

3de471ef-9da2-f045-ddcc-26cf1a5372b1.png

DocFX を検索して、インストールします。
docfx.console の方をインストールしてください

101.png

インストールが終わると、以下のような構成になっているはずです。

85643308-bc6c-afbe-1a64-db3c3cafde7d.png

3.コードを記述

今回はサンプルで、適当なコードを書きます。
ドキュメントを書き出すので、以下のような感じでコメントを入れていきます。

Class1.cs

/// <summary>
/// サンプルクラスライブラリ
/// </summary>
namespace ClassLibrary
{
    /// <summary>
    /// サンプルクラス
    /// </summary>
    public class Class1
    {

        /// <summary>
        /// サンプルプロパティ
        /// </summary>
        public int someNumber = 1;

        /// <summary>
        /// サンプルメソッド
        /// </summary>
        /// <param name="text">サンプル引数</param>
        public void DoSomething(string text) 
        {
            System.Diagnostics.Debug.WriteLine(text);
        }

    }
}

4.ビルド

ここまで来たら、後はビルドするだけです。

ab0c4db0-3e02-dbc3-696b-38be7f68df88.png

書き出しが終わると、DLL と

c39a4b41-5aae-2a34-327e-702fcb47332d.png

_site というフォルダの中にドキュメントも出来上がっています!

04c06a08-d5db-7be0-23fa-d38f79e0db7e.png

index.html を開くとドキュメントのトップページが見えます。
ただ、この index.html 内の JavaScript が Ajax でファイルを読みに行くので、 Chrome 等ではセキュリティ的にそこでエラーが出てしまってArticlesやAPI Documentationといったリンクが非表示になってしまいます。

良いか悪いか、Edgeで見ると問題なく見えます。

bd5ee9de-2333-240b-4eac-506008ec5031.png
2a9e75b9-bf7a-ced0-03dc-8606dda18331.png

おわりに

僕が試した時は、色々試行錯誤してやっとできた感があったのですが、改めて手順としてまとめるととてもシンプルですね。
同じような事で困っている方がいれば、その一助になれば幸いです。

9
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
8