0

テーブルのフィールド名 (dbEmailAddress) として現在表示されている Silverlight データフォームのラベルの説明を変更したいと考えています。

<StackPanel Grid.Row="0" Grid.Column="1">
            <dataFormToolkit:DataForm x:Name="dataForm1"
                                      CurrentItem="{Binding SelectedItem, ElementName=dgLeagues}"
                                      Header="Product Details"
                                      >

        </dataFormToolkit:DataForm>

xamlにプログラムでDataFieldsを追加することでこれを回避できることはわかっていますが、RIAクラス(Webアプリケーション)に属性を追加して、riaドメインメタデータファイルでこのようなものをフィルタリングする必要があります。

[Display(Name = "Email Address:", 
Description="We do not sell your information!")]
public string EmailAddress { get; set; }

-これは機能しますか?

また、そうであれば、ria ドメイン サービス メタデータ ファイルを再コンパイルすると、生成されてからの変更が失われるため、このアプローチは役に立たないのでしょうか?

ありがとう、ジェイソン

4

1 に答える 1

0

あなたがしたことは実際には問題ありません。再コンパイルするたびにやり直すのを避けるために、メタデータに追加できます。

[Display(Name = "Email Address:", 
         Description="We do not sell your information!")]
public string EmailAddress = null;

DomainService を作成するときに、関連するメタデータ クラスを追加できます。追加していない場合は、手動で簡単に作成できます。メタデータ クラスは、記述した正確な情報を保持するように設計されています。

[MetadataType(typeof(CustomerMetadata))]
public partial class Customer 
{
    private static class CustomerMetadata 
    {
        [Required]
        [Display(Name = "Email Address:",
                 Description = "We do not sell your information!")]
        public string EmailAddress = null;
    }
}

メタデータ ファイルの名前は、customer.metadata.cs またはクラスの名前を忘れずに付けてください。*.metadata.cs で postfix にインポートされます。メタデータ ファイルを DomainService と同じフォルダーに配置することをお勧めします。

于 2009-11-01T20:41:50.547 に答える