2009-04-13 11 views
1

私はASP.net Dynamic Dataスキャフォールディングを使用しています。私は理解そのようなテーブルのDynamic Dataでgridviewを生成するために生成されたSelect文を変更しますか?

TABLE1:EducationLevel(ID、levelname、modby、modon)

表2:belongsToEduLevelがFKあるコース(ID、coursename、modby、modon、belongsToEduLevel)

。この場合、動的データはレベル名をグリッドに表示しません。

操作| Modon | EducationPrograms

どうすれば変更できますか?生成されたselect文を変更できますか?

答えて

2

正しく表示されている列が表示されていないとわかっている場合は、FK列をテキスト値ではなく表示しますか?

FKが参照するテーブルにDisplayColumnを適用し、表示する列としてPKを選択するだけでよい場合は、すべて実行する必要があります。

すなわち[DisplayColumn( "ID")]

IdがFK関係およびフィルタに表示する列の名前です。

+0

は、私はそのビットを試してみましょう – Perpetualcoder

1

あなたがコースのため、まだ作成したクラスをカスタマイズしたしない場合は、作成するには、次の:

[ScaffoldTable(true)] 
[MetadataType(typeof(CourseMetaData))] 
public partial class Course 
{ 

} 
[DisplayName("Courses")] 
public class CourseMetaData 
{ 
    [DisplayName("Course ID")] 
    public object CourseID { get; set; } 

    [DisplayName("Course Name")] 
    public object CourseName { get; set; } 

    [DisplayName("Modified By")] 
    public object ModifiedBy { get; set; } 

    [DisplayName("Modified By")] 
    public object ModifiedBy { get; set; } 

    [DisplayName("Modified On")] 
    [DisplayFormat(DataFormatString = "{0:MM-dd-yyyy}")] 
    public object ModifiedOn { get; set; } 

    [DisplayName("Level Name")] 
    public object EducationLevelName { get; set; } 

} 

をそして、あなたはつかむ、教育レベルのための1つを持っていない場合は、この1:

[ScaffoldTable(true)] 
[DisplayColumn("EducationLevelName")] 
[MetadataType(typeof(EducationLevelMetadata))] 
public partial class EducationLevel : INotifyPropertyChanging, INotifyPropertyChanged 
{ 

} 

[DisplayName("Education Levels")] 
public class EducationLevelMetadata 
{ 
    [DisplayName("Education Level ID")] 
    public object EducationLevelID { get; set; } 

    [DisplayName("Education Level Name")] 
    public object EducationLevelName { get; set; } 

    [DisplayName("Education Level Modified By")] 
    public object EducationLevelModBy { get; set; } 

    [DisplayName("Education Level Modified On")] 
    [DisplayFormat(DataFormatString = "{0:MM-dd-yyyy}")] 
    public object EducationLevelModOn { get; set; } 
} 
0

それはあなたが望むものではない場合、計算された値を表示させるToString()メソッドをオーバーライドすることができます:

[MetadataType(typeof(Message_MD))] 
public partial class Message 
{ 
    public override String ToString() 
    { 
     return MessageID.ToString() + ", " + Subject; 
    } 
    public partial class Message_MD 
    { 
     public object MessageID { get; set; } 
     public object Subject { get; set; } 
     public object Body { get; set; } 
     public object SMSBody { get; set; } 
    } 
} 

ここで私はPK IDを持つと

すなわち12、テストメッセージ

・ホープ示すいくつかのテキストは、このことができます:D

関連する問題