メインコンテンツまでスキップ

IModel.AddNewModel メソッド

名前空間: NextDesign.Core

説明

このインスタンスの指定したフィールドの末尾に、指定したクラスのインスタンスをフィールド値として追加します。
ただし、指定したフィールドの多重度上限が1、かつ、そのフィールドにすでにインスタンスがある場合は、先頭のインスタンスを置き換えます。

指定したクラスが抽象クラスの場合でもインスタンスを追加します。

引数

名前説明
fieldNamestringフィールド名
null、または空文字列は指定できません。
また、クラス型の所有フィールドでなければなりません。
classNamestringクラス名
クラスの名前、または完全修飾名を指定します。
null、または空文字列は指定できません。
また、フィールドのデータ型と互換する型でなければなりません。
fuzzyboolあいまい一致オプション
className引数を、完全修飾名ではなくクラスの名前として扱うかどうか。
Falseの場合、完全修飾名がclassNameに一致するクラスを指定したものとして評価します。
Trueの場合、クラス名がclassNameに一致するクラスを指定したものとして評価します。
また、一致するクラスが複数ある場合、一番最初に見つかった型互換のあるクラスのインスタンスを追加します。

既定値はTrueです。

戻り値

例外

名前例外クラス説明
引数不正ExtensionArgumentExceptionfieldName 、または className に null または空文字列を指定した場合
フィールドが見つからないExtensionFieldNotFoundException指定されたフィールドがこのインスタンスのメタクラスで見つからない場合
指定フィールド不正ExtensionInvalidTypeException指定されたフィールドに設定できない値が指定された場合
- 指定されたフィールドが所有フィールドでない
- 指定されたフィールドのデータ型がクラス型でない
- 指定されたフィールドの型と指定されたクラスが互換しない
クラスが見つからないExtensionTypeNotFoundException指定されたクラスが見つからない場合
不正操作ExtensionInvalidOperationException自身が削除済みモデル、一時プロキシの場合
フィールド名に操作不可のフィールドが指定された場合
- プロダクトラインのフィーチャ割り当てフィールド
- System.Coreタグが付与されているフィールド
無効なフィールドが指定された場合