2009-09-29 1 views
5

마지막으로 동적 데이터 (오래 기한 초과)를 파고 들었습니다. 웹 사이트를 볼 때 기본 테이블 목록에서 기본 키 필드가 표시되지 않습니다.동적 데이터 - 목록의 기본 키 필드를 표시하는 방법

예를 들어 두 개의 필드가있는 상태 코드가있는 테이블이 있습니다.

StatusCode int identity Primary Key 
StatusCodeDescription varchar(25) 

내 웹 사이트의 StatusCodes/List.aspx 페이지에는 StatusCodeDescription 만 표시됩니다.

은 내가하지 편집 기본 키,하지만 난 을 보여 드리고자 수 있다는 걸. 동적 데이터를 사용할 수 있습니까?

나 자신을 약간의 해결 방법으로 생각할 수 있으며 모든 정직함에서 문서를 더 자세히 살펴볼 수는 있지만 경험이 많은 사람이 답을 알고 나를 찾는 시간을 절약 할 수 있기를 바랍니다. 적절한 문서에 대한 링크도 좋을 것입니다.

답변

6

연구의 대부분을 소비 한 후에 나는 아마도 "정확한"다른 대답을 가지고 있습니다. 내가 자동으로 테이블에 대해 생성 된 클래스를 확장

: 내가 무엇을 볼 수있는 것은,이 테이블별로입니다에서

ScaffoldColumn 속성을 사용 (당신은 테이블 당 한 번만이 작업을 수행해야 할 것 의미) (StatusCodes)를 사용합니다.

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.DynamicData; 
using System.ComponentModel.DataAnnotations; 

namespace ScholarshipAdmin 
{ 
    [MetadataType(typeof(StatusCodesMetaData))] 
    public partial class StatusCodes 
    { 

    } 

    public class StatusCodesMetaData 
    { 
     [ScaffoldColumn(true)] 
     public object StatusCode; 
    } 
} 
+0

동적 데이터를 많이 사용합니까? 나는 그것이 미치고있는 것을 알았다! 이것이 내가해야 할 첫 번째 일이었습니다! (pri key를 보여주세요) 사람들은 내가 그것을 요구했을 때 미쳤다고 생각하고 그것을 표시 할 수 없었습니다 –

+0

아니요, 아직 사용하지 않았습니다. 이 질문을 게시했을 때 동적 데이터를 사용하여 첫 번째 프로젝트를 진행했습니다. 그러나 더 적절한 곳에서 사용할 계획입니다. 주로 관리 사이트 또는 빠르고 더러운 CRUD 응용 프로그램의 경우. 현재 프로젝트에서조차도, 대부분의 작업은보다 표준적인 Asp.Net 양식을 사용하여 수행되었습니다. 사이트에서 수행되는 작업의 약 1/10만이 동적 데이터 사이트를 통해 수행됩니다. 그게 아마 아마 빨리 깨닫게 된 이유 일 것입니다. – David

+0

@Scott Kramer - 업데이트 : 이제 대부분의 프로젝트에서 Dynamic Data를 사용하고 있습니다. 지금 내가 알아 낸 바로는 훨씬 더 친근하고 쉽게 사용자 지정할 수 있습니다. – David

0

직접 한 가지 가능한 답변을 찾았습니다. 나는 다른 사람이 앞으로 답을 찾아 오는 경우에 대비해 이것을 게시 할 것입니다. 테이블이 모두 하나의 열 기본 키가있는 경우에만 작동합니다.

다른 사람이 여러 개의 기본 키가있는 테이블에서 작동하는 더 나은 간단한 대답을 가지고있는 경우에 대비하여이 질문을 계속합니다. 차라리 다른 사람의 대답을 내 자신보다 선택하고 싶습니다.

List.aspx에서 GridView1에 다음을 추가했습니다.

+0

하나의 기본 키? 기본 키의 정의가 아닌가? –

+1

죄송합니다 - 기본 키가 둘 이상의 열로 구성 될 수 있으므로 "한 기본 키"대신 "한 열 기본 키"를 읽으려면이 편집하십시오. 그래도 물어봐 줘서 고마워! – David