ASP.NET IDを使用するASP.NETコアプロジェクトがあります。プロパティにはSystem.ComponentModel.DataAnnotations
の属性が含まれているため、エクスポートできないクラスもあります。このようなプロパティを無視すると、すべて正常に動作します。Reinforced.Typingsはプロパティの属性を処理できません
例クラス:
public class LoginViewModel
{
[Required]
[EmailAddress]
public string Email { get; set; }
[Required]
[DataType(DataType.Password)]
public string Password { get; set; }
[Display(Name = "Remember me?")]
public bool RememberMe { get; set; }
}
私はこれらの属性を取り除くためにしたくないので、アクションの推奨コースは何ですか?それ以外
[assembly: TsGlobal(
CamelCaseForMethods = true,
CamelCaseForProperties = true,
GenerateDocumentation = true,
UseModules = true,
DiscardNamespacesWhenUsingModules = true)]
namespace X
{
public static class ReinforcedTypingsConfiguration
{
public static void Configure(ConfigurationBuilder builder)
{
builder
.ExportAsInterface<LoginViewModel>()
.AutoI(false)
.WithProperty(x => x.RememberMe)
;
}
}
}
、UseModules
が、私はそれが何をしたいの反対をしているようです。 true
に設定すると、生成されたtsファイルにはモジュールが含まれません。 false
に設定すると、私のtsファイルにmodule
が得られます。
また、ファイル間でタイプを分割すると、私の名前空間に.
のすべてに対して\
を含む奇妙なフォルダ名がMac上に表示されます。構造を平坦化できますか?そして、バックエンドの名前空間を完全に無視しますか?
上記の設定で(ファイル分割を使用して)、迷惑なエラーメッセージerror MSB3552: Resource file "**/*.resx" cannot be found.
が表示されます。
をエクスポートできません。シリアライズできないことを意味しますか?System.ComponentModel.DataAnnotations属性はモデルの検証に使用されますが、シリアル化に問題はありません。あなたはあなたが得ているエラーを投稿できますか? –
あなたは詳細をあまり提供していませんが、現在のコードから、あなたのモデルで '' [TsInterface] '' '' '' '' [TsClass] ''属性が見つからないか、流暢な呼び出しが '' ' ExprotAsInterface'''/'' '.ExportAsClass'''。 エクスポート設定を指定してください。それから私は答えることができます。現在私のマシンでテスト用の.NETコアプロジェクトを作成し、 '' '[' 'TsInterface]' 'をそれに追加するだけで正常にモデルをエクスポートしました。 [Reinforced.Typings](https://github.com/reinforced/Reinforced.Typings)は、何らかの理由で '' '' System.ComponentModel.DataAnnotations'''の属性に干渉しません。 –
エラーMSB3552:リソースファイル "**/*。resx"の問題を修正するとすぐに、私は追加の詳細を書いてみましょう... –