chevron_left

メインカテゴリーを選択しなおす

cancel
ひっそりエンジニアのシステム探求 https://hissori.com/

日々のプロジェクト管理やシステム開発の現場で遭遇する疑問や課題を共有する場としています。各プロジェクトの知見を整理・発信し、エンジニアリングの質を高める一助としています。常により良い方法を追求するエンジニアの思考を綴っています。

住所
未設定
出身
未設定
ひっそり
フォロー
ブログ村参加

2023/10/31

ブログをみる無料アプリ

アプリでフォローする
arrow_drop_down
  • GitHub Copilot Businessを契約してVisual Studioで使うまで

    プログラミングをしていると、「もっと早くコードを書きたい」「エラーの原因をすぐ知りたい」「このソースコードの意味が分からない」と思ったことはありませんか?そんな悩みを解決してくれるのが GitHub Copilot です。GitHub Co...

  • Visual StudioでGitHub Copilotを使ってみた!導入方法・使い方・セキュリティの注意点

    AIを活用した開発支援ツールが普及する中で、特に注目を集めているのがGitHub Copilotです。私自身、普段はVisual Studioを利用してC#やASP.NET MVCの開発を行っていますが、「実際にどこまで使えるのか」「既存シ...

  • Codexで作成したサイトをGitHub・Vercel・XServerで公開する手順【初心者向け】

    この記事で行うことこの記事では、CodexなどのAIコーディングツールで作成したWebサイトを、GitHubで管理し、Vercelへデプロイして公開するまでの手順を解説します。さらに、XServerで管理している独自ドメインのサブドメインを...

  • 閉域環境のC# MVCシステムからクラウドAPI連携を行うための環境構築ガイド

    近年では、SaaSやクラウドサービスとのAPI連携が一般的になっています。しかし、既存システムがデータセンター内の閉域環境にあり、現在はHTTPかつIPアドレスでアクセスしている構成の場合、単純にAPIを実装するだけでは連携できません。特に...

  • GitHub Teamプランの始め方|Organization作成から権限管理まで初心者向けに解説

    GitHubを利用したチーム開発では、「リポジトリはどう分けるべきか」「誰にどの権限を与えるべきか」といった運用ルールを決める必要があります。GitHub Teamプランを利用すると、OrganizationやTeam機能を活用してメンバー...

  • C# MVCでSQL Serverのページングを実装する方法(OFFSET FETCH対応)

    C# MVCで一覧画面を実装する際、ページング処理は欠かせない機能の一つです。データ件数が増えると、全件取得は表示速度やサーバー負荷の面で現実的ではありません。SQL Serverでは、SQL Server 2012以降で利用できる OFF...

  • Codex CLIを使ってみる|インストールからアプリ作成まで初心者向けに解説

    AIによるコード生成が一般化する中で、CLI(コマンドライン)から直接AIに開発を依頼できる「Codex CLI」が注目されています。特に、ファイル作成・npm実行・Git操作まで一気に任せられる点は、従来のチャット型AIとは大きく異なるポ...

  • ストアド利用方法(SQL Server)

    そもそもストアドって何?ストアドプロシージャ(Stored Procedure)は、「DBの中に保存しておくプログラム」みたいなものです。C#でいうメソッドを、SQL Serverの中に置いておくイメージですね。いつ使うのが効率的?① 複雑...

  • SQL Server移行前後の件数確認クエリ集

    ① 全ユーザーテーブルの正確な件数を取得する(推奨)SELECT s.name AS schema_name, t.name AS table_name, SUM(p.rows) AS row_countFROM sys.tables tI...

  • データ移行前後のINDEX調査と追加SQL

    データ移行プロジェクトで見落とされがちなのが、既存テーブルのINDEX構成です。スキーマだけ移行してINDEXを再現していない、あるいは環境差分で抜け漏れがあると、移行後に性能問題が顕在化します。本記事では「既存環境のINDEXを調査するS...

  • 実務で失敗しないためのキューイング設計整理

    非同期処理やスケーラブルなシステムを設計する際、キューは非常に強力な手段です。一方で、「とりあえずキューを入れた」結果、遅延・重複処理・詰まり・運用トラブルに悩まされるケースも少なくありません。本記事では、キューイングの基本から、設計時に必...

  • ThunderbirdユーザーがGmailに移行するときの初期設定

    ThunderbirdからGmail(Google Workspace)へ移行すると、多くの人がこう感じます。「Gmail、なんか使いにくい…」一覧の表示、会話形式、返信の動き、新規作成のUI。どれも思想が違うため、最初は戸惑うのが普通です...

  • Google Workspaceで社内Wikiを作る方法

    20名規模の会社でも、Google Workspaceだけで実用的な社内Wikiは作れます。専用ツール(ConfluenceやNotionなど)を導入しなくても、 Driveで保管 Googleドキュメントで本文管理 Google Site...

  • Google DriveとWorkspaceの役割整理と活用視点

    現代のビジネス、特にエンジニアリングが関わる現場において、ドキュメント管理は「情報の貯蔵」から「情報の循環」へとその役割を変えています。しかし、多くの現場ではGoogle Driveを導入しているにもかかわらず、以下のような嘆きが絶えません...

  • Google AI StudioでLPを作る手順

    「AIでランディングページ(LP)を作りたい」そう思って調べ始めたものの、次のような壁にぶつかったことはないでしょうか。 日本語で指示しても、英語混じりのLPが出てくる それっぽいページはできるが、構成やコピーを自分で調整できない ソースや...

  • AIでランディングページを作る現実解

    「AIでランディングページ(LP)を作りたい」そう思って調べ始めたものの、次のような壁にぶつかった経験はないでしょうか。 英語UIのツールが多く、操作に不安がある 日本語で指示しても、英語混じりのLPが生成される それっぽいページはできたが...

  • Google Workspaceで実現するスプレッドシート共有方法

    お客さまとExcelファイルをメールでやり取りしていると、「どれが最新版か分からない」「同時編集したら壊れてしまった」「誰がどこを直したのか追えない」といった問題に直面しがちです。これは担当者の操作ミスというより、ファイルを送受信する運用そ...

  • 小規模チーム向け GitHub ブランチ運用ルール実践例

    GitHub のブランチ運用というと、Git Flow などの完成度の高い手法がまず思い浮かびます。しかし、5〜20名規模の小〜中規模チームでそれらをそのまま導入すると、「ルールは立派だが誰も守れていない」という状態に陥りがちです。大規模向...

  • 小規模で失敗しないGitHub Team導入と権限設計の考え方

    GitHub を業務で導入する際、「契約はどう進めるべきか」「誰にどの権限を与えるべきか」で悩むケースは少なくありません。初期設計を誤ると、 ソース管理が特定の個人に依存する 権限が肥大化し、事故のリスクを抱えたまま運用するといった問題が起...

  • 小規模で考えるGitHub TeamとEnterpriseの選び方

    GitHubを業務に導入する際、「Teamで十分なのか、それともEnterpriseが必要なのか」で迷う企業は少なくありません。特に、パートナー企業やSIerからEnterpriseを勧められた場合、その背景や前提を十分に理解しないまま導入...

  • C#で配列を昇順・降順にソートする方法|Array.SortとCompareの活用術

    C#で配列を並び替える処理は、画面表示の整形・ランキング作成・ログの時系列整理など、実務のあらゆる場面で登場します。Array.Sort を起点に、Compare(比較ロジック)を理解しておくと、降順やプロパティ指定のソートも「迷わず書ける...

  • Cドライブの空き容量が足りないときにやったこと

    PCを使っていると、突然「Cドライブの空き容量が残りわずかです」という警告が表示されることがあります。特に何も保存していないつもりでも、いつの間にか容量がギリギリになっていて焦ることも。とはいえ、闇雲に削除するのは怖いし、「何を消していいの...

  • Google Workspaceで使うGoogleカレンダー活用術

    チーム内のスケジュール調整や会議の管理において、Googleカレンダーは欠かせないツールです。しかし、Google Workspaceと連携した高度な活用方法までは使いこなせていない方も多いのではないでしょうか。本記事では、Googleカレ...

  • Google Authenticatorでよくあるトラブルと対処法

    二要素認証(2FA)において広く利用されているGoogle Authenticatorは、そのシンプルさと信頼性から多くのエンジニアに支持されています。しかし、実際の運用では「スマホをなくしてログインできない」「機種変更で認証コードが消えた...

  • Google Workspace版 Gmailの使い方と活用ポイント

    業務メールの運用で、「過去のメールが見つからない」「CCが多すぎて重要な連絡が埋もれる」「担当者が変わると履歴が追えない」といった悩みを感じたことはないでしょうか。Google Workspace 版 Gmail は、単なるメールソフトでは...

  • Jira・Backlog・Asana・Jooto 比較

    個人開発や小規模チームでも、「課題の履歴を残したい」「不具合対応を後から振り返りたい」という場面は少なくありません。本記事では、代表的な課題管理ツールであるJira / Backlog / Asana / Jootoについて、以下の観点から...

  • RedisInsightで学ぶRedis可視化運用

    Redisは高速で柔軟なデータストアとして多くのシステムで利用されていますが、CLI(コマンドライン)だけの運用では「今どんなデータが入っているのか」「どのキーが効いているのか」が直感的に分かりにくい場面があります。そこで役立つのが、Red...

  • Vercelで無料のアクセス解析を入れる方法

    Next.js でブログやサイトを公開したあと、「どれくらいアクセスがあるのか」「ページ表示は遅くないか」気になりませんか?Vercel を使っている場合、外部の解析サービスを使わなくても公式の Web Analytics(アクセス解析) ...

  • Next.js + Markdownブログで「外部リンクを別タブで開く」設定

    Next.js と Markdown でニュースまとめや技術ブログを運用していると、外部サイトへの参照リンクが増えていきます。このとき外部リンクを同じタブで開くと、読者がそのまま離脱しやすくなります。そこで本記事では、外部リンクだけを別タブ...

  • システム開発工程別に整理する成果物一覧と全体像

    システム開発において「今どの工程で、どんな資料を作るべきか分からない」「あとから“それ聞いてない”が発生する」――そんな経験はありませんか。多くのトラブルは、技術力不足ではなく工程ごとの役割・成果物が整理されていないこと に起因します。本記...

  • システム開発におけるPM・PL・SEなど役割の違いを整理

    システム開発では、PM(プロジェクトマネージャー)、PL(プロジェクトリーダー)、SubLeader、SE(システムエンジニア)、プログラマーなど、複数の役割が連携してプロジェクトを進めます。一方、実際の現場では 名目上の役割と、実際にやっ...

  • Next.js + Markdownブログで行間・見た目を整える実践ガイド

    Next.js と Markdown を使ったブログを作っていると、 文字が詰まって読みにくい 見出しと本文の区切りが分かりづらい 技術記事なのにメモのように見えると感じることがあります。調整前は「内容は悪くないのに、読むのが少し疲れる」状...

  • C# MVCでサーバ内画像を表示する設計

    「ユーザがサーバ上の指定フォルダに画像を配置し、業務データと紐づけて Web 画面で表示する」――この構成は、社内システムや BtoB 向け Web アプリでは非常によく見られます。一方で、実装段階になると次のような疑問に必ず直面します。 ...

  • C# MVCのSessionが使うメモリ量を可視化する調査手順

    C# MVCアプリで何気なく使っている Session.Add()。しかしその裏では、Sessionのモード設定によって「保存場所」「消費されるリソース」「障害の出方」が大きく変わります。特に InProc の場合、Sessionは IIS...

  • Redis TTLによるキー有効期限管理

    Redisをキャッシュやセッションストアとして利用する際、TTL(Time To Live)は欠かせない仕組みです。一方で、「いつ削除されるのか」「メモリ解放は即時か」「永続化やレプリケーションにどう影響するのか」といった挙動を正確に理解し...

  • Next.js + Markdownブログで「リンクがクリックできない」原因と解決

    Next.js と Markdown を使ったブログ構成では、URL が表示されているのにクリックできないというトラブルに遭遇することがあります。一見すると CSS の問題に見えるため、原因の切り分けでハマりやすいのが特徴です。本記事では、...

  • LINQのTakeWhileと類似メソッドの違いを整理する

    LINQ の TakeWhile は、「条件が成立している間だけ処理を続ける」という特徴を持つ便利なメソッドです。しかし、Take や Where、SkipWhile など似た用途に見えるメソッドも多く、感覚的に使い分けてしまっているケース...

  • Google Workspaceの主要機能とプランの使いどころ

    Google Workspaceは、単なるクラウドツール群ではありません。業務フロー・情報管理・意思決定を一体で最適化するための業務基盤です。一方で現場では、 Gmailとドライブしか使っていない 高機能だが、どこまで使えばよいかわからない...

  • C# using文によるリソース管理の要点

    ファイル操作やデータベース接続、HTTP通信などを実装していると、「Disposeを書き忘れていた」「なぜかファイルがロックされたままになる」といった経験はないでしょうか。C#のusing文は、そうしたリソース解放のミスを防ぐための言語機能...

  • C#における ref と out の違いを整理する

    C#でメソッド設計をしていると、「値を参照渡ししたいだけなのに、ref と out のどちらを使うべきか迷う」という場面に遭遇することがあります。どちらも参照渡しを行うキーワードですが、設計意図・責任の所在・APIの読みやすさという観点では...

  • AI × Next.js × Markdown で作る雑記ブログ構築ガイド

    「Next.jsでブログを作りたいけど、CMSは使いたくない」「Markdownで記事を増やして、GitHubにpushしたらVercelで自動公開したい」──そんな人向けに、余計な説明を削って“手順だけ”にまとめた構築ガイドです。このペー...

  • 別スレッド処理中にForm描画を安全に更新する設計

    バックグラウンド処理の進捗やログをリアルタイムにFormへ表示したい——そんな要件に直面したことはありませんか?Windows FormsやWPFなどのGUIアプリケーションでは、別スレッドから直接UIを更新できないという制約があり、設計を...

  • SQL Serverのロック状況を確認するクエリと実用的な分析ポイント

    SQL Serverで「急に処理が遅くなった」「特定の更新処理が止まっている」といった事象に遭遇した場合、内部でロック競合やブロッキングが発生している可能性があります。本記事では、sys.dm_tran_locks を起点に、現在のロック状...

  • 複数サイト運用時のホスト名の付け方と注意点

    一つのWebサーバーで複数のWebサイトを運用するケースは、開発環境と本番環境の分離、コスト削減、検証用サイトの併設など、現場ではごく一般的です。その際に必ず関わってくるのが「ホスト名(hostname)」の設計と設定です。IISでは「バイ...

  • IISのアプリケーションプール再起動とは?仕組みと運用の基本

    IISでWebアプリケーションを運用していると、「アプリケーションプールの再起動(リサイクル)をしてください」と言われる場面に少なからず遭遇します。しかし、なぜ再起動が必要なのか、再起動すると内部で何が起きているのかを正しく理解できていない...

  • SQL Serverのパフォーマンス低下時に見直すべき基本操作

    SQL Serverを運用していると、これまで問題なく動作していたクエリが急に遅くなる、バッチ処理の完了時間が延びるといった事象に直面することがあります。こうしたパフォーマンス低下は、アプリケーション側の変更だけでなく、データ量の増加や内部...

  • C#でセッション情報をDB管理する方法と設計ポイント

    Webアプリケーションのセッション管理は、規模が小さいうちはあまり意識されません。しかし、可用性やスケーラビリティが求められるシステムでは、セッション管理の設計がアーキテクチャ全体の品質を大きく左右します。本記事では、C#(ASP.NET系...

  • ASP.NETのURLルーティングを理解する:System.Web.Routingの基本

    ASP.NETアプリケーションにおいて、URL設計はユーザー体験(UX)やSEOに直結する重要な要素です。その中核を担う仕組みが「ルーティング」です。本記事では、.NET Framework 環境で利用される System.Web.Rout...

  • C#環境でのセッションメモリ使用量の可視化手法

    ASP.NET Core で Web アプリケーションを開発していると、次のような疑問や不安を感じることは少なくありません。 セッションにどの程度のデータを入れてよいのか分からない Redis のメモリ使用量が増えているが、原因が特定できな...

  • Webアプリにパスキー認証を導入する手順と注意点

    FIDO2 や WebAuthn の普及により、パスワードレス認証は「将来の構想」ではなく、現実的な選択肢になりました。中でもパスキーは、主要 OS・ブラウザが標準対応を進めており、Web アプリケーションの認証方式として無視できない存在で...

  • Google Workspace導入ガイド

    20名前後の小規模チーム向け・比較と失敗しない運用設計はじめにGoogle Workspace(旧 G Suite)は、「Googleの法人向けサービス」という認識はあっても、 自社規模(20名前後)に本当に合うのか Microsoft 3...

  • C#で実践!パフォーマンスと設計を両立する Lazy 活用術

    アプリケーション設計において、「パフォーマンス」と「保守性」を同時に満たすのは簡単ではありません。特に、初期化コストの高い依存オブジェクトをいつ・どのタイミングで生成するかは、多くのプロジェクトで見落とされがちな設計課題です。この記事では、...

  • C# MVCの構成を押さえる

    ― Service と DataManager まで含めた実践設計 ―ASP.NET MVC で開発を続けていると、「Controller が肥大化してきた」「ビジネスロジックやデータ取得処理の置き場に迷う」と感じる場面は少なくありません。...

  • Hidden と HiddenFor の違いを正しく理解する

    ASP.NET MVC や ASP.NET Core MVC を扱っていると、Hidden と HiddenFor のどちらを使うべきか迷うことはありませんか。シンプルな hidden フィールドであれば、どちらでも同じように見えてしまうか...

  • システムエンジニアのための「PDCAをうまく回す」実践ガイド

    「PDCAを回そうと言われても、実務が忙しくて続かない…」「振り返りをしても、次に活かす仕組みにならない…」そんな悩みを抱えるシステムエンジニア向けに、この記事では **“PDCAを実務で回せる形に落とし込む”** ことを目的として解説します。キレイな理論ではなく、日々のシゴトでそのまま使える視点・手法にこだわっています。

  • システム開発における「優先順位」判断の考え方とは

    「タスクが多すぎて、どれから手をつければいいかわからない」──システム開発の現場では、誰もが一度は直面する悩みです。限られたリソースの中で最大の成果を生むには、**優先順位付けの精度** がプロジェクト成功を左右します。この記事では、- 優先順位とは何か- 優先順位の判断軸- 実際に使えるフレームワーク- ありがちな失敗事例- 優先順位が明確になるメリット を体系的に解説します。

  • Push 前のコミットを安全に整形する方法

    Visual Studio と Git コマンドで理解する履歴管理の基本Push 前のコミットは、まだ他のメンバーに共有されていないため、自由に整形できる重要なフェーズです。この記事では、履歴を整えるメリット、Visual Studio と Git コマンドの操作方法、そして実務での使い分けまで詳しく解説します。

  • jQueryの.ajax()とfetch()の違いとは?

    非同期通信の実装方法として長年使われてきた jQuery .ajax() と、現代の標準APIである fetch()。どちらを使うべきかは、プロジェクトの環境や目的によって異なります。この記事では、両者の「違い・書き方・メリット/デメリット...

  • OleDbDataReaderとOleDbCommandの役割を正しく理解する

    C# によるデータベースアクセスでは、OleDbCommand と OleDbDataReader の役割を正しく理解しているかどうかで、コードの品質やパフォーマンスは大きく変わります。両者は密接な関係を持ちながらも、担っている責務は明確に異なります。本記事では、ADO.NET を使う際に押さえておきたい「司令塔としての Command」「ストリーミング取得を担う DataReader」という本質的な違いを、実践視点で解説します。

  • OleDbで使う主要メソッドとクラスの全体像

    OleDb を使ったデータベース処理では、「SELECT にはどのメソッドを使うべきか」「更新系はどれを選ぶべきか」「DataReader と DataAdapter の違いは何か」など、似た名称の多さから迷う場面が少なくありません。特に参照・更新・追加・削除といった基本操作は、適切なメソッドを選べるかどうかでパフォーマンスやコードの可読性が大きく変わります。本記事では、ADO.NET(OleDb)の主要メソッドとクラスの役割を体系的に整理し、用途に応じた最適な使い分けを分かりやすく解説します。日々の開発で即活用できる知識を身につけてくださ

  • エンジニア視点で学ぶ量子コンピューティング

    クラウドネイティブ時代の次の飛躍として「量子コンピューティング」が注目されています。しかしQubitや超伝導回路といった専門用語が並ぶ記事を読んでも、「結局、自分の開発業務にどう役立つのか」が見えにくいのも事実です。本記事では Web システム開発歴 10 年前後のエンジニアを想定し、量子計算の基本概念から代表的フレームワーク、実用事例、そして現状の限界までを俯瞰します。NISQ(ノイズの多い中規模量子)時代にできること・まだ難しいことを整理し、今日から取れる具体的なステップを提案します。

  • Visual Studio 2022で使えるGit機能一覧

    Visual Studio 2022では、Gitとの統合が大幅に進化し、これまでコマンドラインでしか扱えなかった操作の多くがGUIから実行できるようになりました。この記事では、Visual Studio 2022で利用できるGit機能を「基本操作」から「チーム開発」「高度機能」までカテゴリ別に整理。Gitをより効率的に使いこなしたい開発者向けに、実務で役立つ操作範囲を一覧形式でまとめます。

  • 【Git】Visual Studioでコミットをまとめる3つの方法

    Visual Studioで開発していると、「細かいコミットを1つにまとめて履歴をきれいにしたい」と思うことがあります。ところが、Visual StudioのGUIにはGitの「Squash(コミット統合)」機能が標準搭載されていません。この記事では、Visual Studioだけでできる代替手段から、CLI(コマンドライン)やPull Requestを使った正式なSquash方法までを整理して解説します。最終的に、自分の開発スタイルやチーム運用に最適な方法を選べるようになります。

  • エッジ分散DB「Turso」実践ガイド入門

    クラウドからエッジへとデータを近づけたい──そんな要望が増えています。しかし「フルマネージドのRDBはレイテンシが…」と悩んだ経験はありませんか?TursoはSQLite互換の軽量エンジンをベースに、世界数十リージョンへレプリケーションし、ミリ秒級で読み書きを実現する新世代の分散DBです。本記事では、その仕組みと導入の勘所、運用時の注意点をエンジニア視点で整理します。サーバーレスやEdge Functions、IoTゲートウェイなど従来の集中型DBではスケールやレイテンシがボトルネックになりやすいユースケースで特に有効です。競合製品との差異も交えながら、開発から運用、セキュリティまで俯瞰し、採用判断に必要なポイントを明確に解説します。

  • WPFの基本と実践的UI構築入門

    業務用のデスクトップアプリ開発で「WinFormsでは設計に限界を感じる」「保守性と拡張性に優れたモダンUIを採用したい」と思ったことはありませんか?本記事では、Windows Presentation Foundation(WPF)の基礎から実践的なMVVMアーキテクチャ、XAMLによる宣言的UI、データバインディングの活用までを整理します。特に、**WinForms経験者やC#エンジニアで、モダンなUIフレームワークへ移行を検討している方**を対象に、学習ロードマップとベストプラクティスを俯瞰できる構成としました。

  • jQueryバリデーションの基本と実装例

    フォーム入力時のバリデーション、うまく機能していますか?ASP.NET MVCなどで自動生成されたHTMLには、`data-val`属性によるバリデーションが仕込まれており、jQuery Validationライブラリと組み合わせることで、柔軟かつ実用的な入力チェックが可能になります。この記事では、HTML属性ベースでのバリデーション定義の読み解き方から、必要なライブラリ構成、独自ルールの追加方法まで、実例を交えてわかりやすく解説します。

  • 二重登録とEnter誤送信を防ぐC# MVC実装ガイド

    業務システムの入力フォームで「保存ボタンを二度押ししてしまった」「Enterキーで意図せず送信された」といった事故に悩んでいませんか?ASP.NET MVC では Razor ビュー、jQuery、そしてサーバ側の ActionMethod を組み合わせることで、堅牢な二重登録防止を実現できます。本記事では、フロントとサーバ双方の実装パターンを整理し、すぐに導入できるコード例と設計上の注意点を解説します。

  • SSRSとReportServerを使った帳票システムの導入と運用の流れ

    SQL Server Reporting Services(SSRS)は、SQL Server環境における強力な帳票基盤です。定型帳票の自動出力やスケジュール配信を実現でき、専用のReportServerデータベースでレポート定義やセキュリティ設定を一元管理できます。本記事では、**SSRSのインストールから初期構成、サンプルDBによる動作確認、Report Builderでの帳票作成、Webポータルへのデプロイ、ログ確認とエラー対応**までを、初心者にも分かりやすく体系的に解説します。

  • MVCモデルバインディングの基礎と活用

    フォームの入力値やURLパラメータをコントローラーで扱うとき、「どうやって値を受け取るのが正解なのか?」と迷ったことはありませんか?( MVCには、そうしたデータ受け渡しを自動的かつスマートに行う「モデルバインディング」という仕組みがあります。しかし、仕組みを知らずに使っていると、思わぬバグやセキュリティリスクを招くことも。本記事では、モデルバインディングの基本から、データソースの指定、カスタムバインダーの実装、そして実務で役立つファイルアップロードのサンプルまで、段階的に解説します。これを読めば、MVCのフォーム処理がぐっとスムーズになるはずです。

  • ViewBagとViewDataをスマートに使い分ける

    ASP.NET MVC/Coreで、「ページタイトルをLayoutに渡したい」「一時的にメッセージを表示したい」などの場面で、ViewBagやViewDataを使ったことはありませんか?これらはどちらも「軽量なデータ渡し手段」として便利です...

  • DropDownListにコード・名前・区分を持たせる実装方法

    Webアプリケーションでよく遭遇する課題があります。「商品を選択したら、その場で価格と在庫数を表示したい」「部門コードを選んだら、対応する予算情報を自動取得したい」「顧客名を選択すると、顧客区分も一緒に設定したい」通常のDropDownLi...

  • コードレビュー時間を50%削減!Roslynアナライザーで実現する品質自動化

    「また同じ指摘をしている...」「チームでコーディングスタイルがバラバラ...」そんな悩みを抱えていませんか?**本記事の対象読者:** C#開発経験1年以上で、チーム開発に携わる開発者・リードエンジニアRoslynアナライザーを導入したチームでは、以下のような成果が報告されています:- レビューで指摘される基本的なルール違反が70%減少- null参照例外によるバグが導入1ヶ月で半減- コードレビューの時間を平均50%短縮し、ロジックの議論に集中可能本記事では、これらの効果を実現するための具体的な導入方法から運用のコツまで、実践的に解説します。

  • C# MVCで実装するメール送信機能の基本と注意点

    ASP.NET MVCでメール送信機能を実装する際、「SMTP設定や非同期処理の方法がわからない」「テストや運用でトラブルを避けたい」といった悩みを抱える開発者は少なくありません。本記事では、C#とASP.NET MVCを使ったメール送信機能の全体フローから、セキュリティ・パフォーマンス・運用面の注意点まで、実装例を交えてわかりやすく解説します。

  • Bearer認証の仕組みと実装時の注意点とは?

    API開発で広く使われている「Bearer認証」ですが、その仕組みやセキュリティ上の注意点を正しく理解していますか?本記事では、Bearer認証の基礎からOAuth 2.0との違い、実装時に気をつけるポイント、実践的な使用例までを体系的に解...

  • Windowsアプリで外部APIを呼び出して応答を受信する方法

    WindowsフォームやWPFなど、.NET Framework 4.6.1 を利用したデスクトップアプリケーションから外部の HTTP API を呼び出し、サーバーからの応答を正しく受信・解析する方法を解説します。この記事では、特に推奨さ...

  • C#の「new」キーワード入門:インスタンス生成の基本とその役割

    C#を学び始めると頻繁に出てくるのが「new」キーワードです。「なんとなく使っているけれど、具体的に何をしているのか分からない」という方も多いのではないでしょうか。この記事では、「new」が果たす役割やインスタンス生成との関係、また使わなく...

  • C#のSerializable属性とは?データ保存・転送の基本を理解する

    C#でオブジェクトをファイルやネットワーク経由で保存・転送したい場面、よくありますよね。そんなときに不可欠なのが 属性です。しかし、単に属性を付ければOKと思っていたら、意外な落とし穴にハマることも。この記事では、 の基本的な使い方から、実...

  • C# タプルの使い方とValueTupleとの違い

    C#で「複数の値を一時的に返したい」「DTOを定義するほどでもない」といった場面において、非常に便利なのがタプル(Tuple)です。特にC# 7.0以降で導入されたValueTupleにより、構文が簡潔になり、パフォーマンスにも優れたコード...

  • 開発を効率化するAIエディタ「Cursor」の始め方と活用法

    AIコード補完ツール Cursor の導入を検討している開発者向けに、実際の使用感を踏まえた 実践的な導入ガイド をお届けします。VS Code からの移行方法、料金プランの選び方、実際の開発での活用法まで詳しく解説します。更新情報:202...

  • C#セッション管理でのメモリ不足を防ぐ完全ガイド

    セッション管理は、ウェブアプリケーションでユーザーの状態を保持するための基本機能です。しかし、適切に設計されていないセッション管理は、メモリ不足、パフォーマンス劣化、セッションタイムアウトの頻発といった深刻な問題を引き起こします。「急にサー...

  • GitHub Copilot導入ガイド:開発効率を上げる新習慣

    GitHub Copilotは、AIによるコード補完や関数提案を自動で行ってくれる開発支援ツールです。「興味はあるけど実際どう使うの?」「チーム導入のポイントは?」と感じている方も多いでしょう。本記事では、初めて導入する方が迷わず始められる...

  • WordPressテーマCocoonで内部リンク(ブログカード)を貼る方法まとめ

    「他の記事も紹介したいけど、見栄えよくリンクを貼るにはどうしたらいい?」WordPressで記事を書いていると、過去記事や関連情報に読者を誘導したくなる場面が多くあります。 そんなとき便利なのが、ブログカード形式の内部リンクです。特に無料で...

  • 業務効率が上がるGitLabの便利機能10選

    GitLabをソースコードのホスティングだけに使っていませんか?GitLabはCI/CD、セキュリティスキャン、プロジェクト管理、コンテナレジストリなど、開発工程を一元化できる多彩な機能を備えたDevOpsプラットフォームです。本記事では、...

  • VS Codeでマーメイド記法のシーケンス図を描く手順

    マーメイド記法を使って、Visual Studio Code(VS Code)でシーケンス図を描く手順と運用方法をわかりやすく解説します。VS Codeでマーメイド記法を使う準備Mermaid記法をVS Codeで使うには、事前のツール導入...

  • GitLabでIssueとコミットを連携する実務運用とCI/CD統合の手引き

    GitLabを活用したチーム開発で、Issueとコミット、マージリクエスト(MR)の連携に悩んでいませんか? チケット番号のないコミットが混在している MRにIssueが紐づいておらず目的が不明 コミットメッセージのルールがメンバーごとにバ...

  • Gitのsquashとは?コミット履歴を整理する基本操作と活用事例

    Gitで「細かいコミットが多すぎて見づらい」「PR前に履歴を整理したい」と悩んだことはありませんか?この記事では、コミットを1つにまとめるsquashの基本操作から活用シーン、注意点までを初心者にもわかりやすく解説します。実際の開発フローに...

  • C# MVCで外部APIにアクセスする基本と実装手順

    ✍️ リード文外部APIとの連携は、現代のWebアプリケーション開発において欠かせません。特にC#とASP.NET MVC環境では、HttpClientを用いた非同期処理の設計が重要です。本記事では、C#とMVCを活用して外部APIへアクセ...

  • C# MVC5でWeb APIを構築する:基本構成と簡易トークン認証の導入

    MVC5で構築したWeb API、誰でもアクセスできてしまっては困りますよね。この記事では、MVC5(.NET Framework)環境で最小限のコーディングで実装できる「簡易トークン認証」によるAPI保護方法をご紹介します。既存システムに...

  • ValidationMessageForとValidationMessageの違いを整理

    「ValidationMessageForとValidationMessage、どう使い分けるの?」「なんとなく使っているけど、違いをちゃんと理解していないかも…」ASP.NET MVCやRazor Pagesを使ったフォーム開発において、...

  • バリデーション実装の種類と使い分け【C# MVC】

    「DataAnnotations だけで十分なのか?」「ModelState はどこでエラー追加すべき?」「複雑な入力チェックはどこで処理する?」ASP.NET Core MVCでバリデーションを実装する際、このような疑問に直面する開発者は...

  • クリックジャッキングの仕組みと対策ガイド

    「そのボタン、本当に押しても大丈夫ですか?」一見普通のWebページ。しかし、背後であなたの意思に反して「送金」や「設定変更」が行われていたら…?本記事では、Webの安全性を脅かすクリックジャッキングの仕組みと、それを防ぐための具体的な対策を...

  • JavaScriptのlet再入門:なぜvarより適しているのか

    JavaScriptで変数を宣言する際、あなたは今もvarを使っていませんか?ES6以降登場したletは、一見単純な構文変更のように見えますが、スコープ管理や再代入性、バグ回避など、実務に大きな影響を与える重要な構文です。この記事では、le...

  • CSRF(クロスサイトリクエストフォージェリ)の基本と実践的な理解

    ログイン中のユーザーが意図しない操作を実行させられる「CSRF(クロスサイトリクエストフォージェリ)」は、Webアプリケーションにおいて見落としがちな脆弱性のひとつです。特にセッション管理やAPI連携が関わる場面では、意識的な対策が欠かせま...

  • クロスオリジン制限とCORSの基本と対処法

    「フロントからAPIを叩いたらCORSエラーが出る」「iframeで別ドメインの内容が読めない」──そんな経験はありませんか?本記事では、Web開発において頻出する「クロスオリジン制限(Same-Origin Policy)」の基本概念と、...

  • Ajax連発を防ぐdebounceの活用法

    検索や入力補完の機能を実装する際、ユーザーの入力ごとにAjax通信が連発されて困った経験はありませんか?このような問題は、debounce関数を使うことでシンプルかつ効果的に解決できます。本記事では、debounce関数の基本的な仕組みから...

  • C# MVCにおけるリダイレクトの使い分けと実装パターン整理

    C# ASP.NET MVCの開発では、ユーザーの操作に応じて適切な画面遷移(リダイレクト)を行うことが重要です。しかし、Redirect()、RedirectToAction()、RedirectToRoute() など複数のメソッドが用...

  • C# MVCでの二重登録を防ぐ実装パターン

    フォームの「連打」による二重登録、あなたのアプリでも発生していませんか?ASP.NET MVCで開発された業務アプリでは、ユーザーの意図しない再送信によって、同じデータが二重に登録されるトラブルがしばしば発生します。本記事では、C# MVC...

  • ネストされたコレクションを扱うなら?SelectManyの活用法

    INQで複雑なデータ構造を扱う際、「リストの中のリスト」や「子要素の展開」に苦労することはありませんか?そんなときに頼りになるのがSelectManyです。しかし、実際に使ってみると意図しない結果になったり、デバッグが難しかったりとハードル...

  • ASP.NET MVCビューで実装するBootstrapレイアウトの基本

    ASP.NET MVCを使ってWebアプリケーションを開発する中で、レイアウト設計に悩むことはありませんか?特に、Razorビューにどう書けばよいのか分かりづらいという声をよく耳にします。この記事では、Bootstrapを使って共通レイアウ...

  • Web Deployで効率化するASP.NETアプリの本番環境デプロイ

    ASP.NETアプリケーションを本番環境にデプロイする際、「手作業が多くてミスが発生する」「構成の再現性がない」といった悩みを抱えていませんか?Microsoft公式のツール「Web Deploy」は、IISへのアプリケーション展開を自動化...

arrow_drop_down

にほんブログ村 カテゴリー一覧

商用