ASP.NET 에서 ObjectDataSource 컨트롤 의 DataObjectTypeName 속성
특정한 종류의 이름 을 가 져 오 거나 설정 합 니 다.ObjectDataSource 컨트롤 은 데이터 바 인 딩 컨트롤 에서 개별 값 을 전달 하 는 것 이 아니 라 데이터 작업 의 인 자 를 업데이트,삽입 또는 삭제 하 는 데 사 용 됩 니 다.
Update,Insert,Delete 방법 에 전 달 될 여러 개의 인 자 를 지정 하지 않 고 여러 개의 데이터 필드 값 을 누적 하 는 대상 을 만 들 수 있 습 니 다.여러 개의 인자 가 아 닌 방법 으로 만 이 대상 을 전달 합 니 다.
데이터 바 인 딩 컨트롤 에 연 결 된 ObjectDataSource 컨트롤 의 기본 동작 은 데이터 바 인 딩 컨트롤 이 데이터 원본 의 모든 매개 변수 에 Parameter 대상 을 만 드 는 것 입 니 다.업무 대상 에 필드 가 많 으 면 결과 방법 도 필드 가 많다.DataObject TypeName 속성 은 모든 데이터 필드 에 속성 이 있 는 종 류 를 지정 할 수 있 습 니 다.이렇게 하면 실행 할 때 방법 에 여러 개의 파 라 메 터 를 전달 하 는 것 이 아니 라 대상 을 만 들 고 모든 속성 을 설정 합 니 다.이 대상 은 호출 된 매개 변수 집합 에 추 가 됩 니 다.
2.DataObject TypeName 속성의 사용
DataObject TypeName 속성 이 지정 한 형식 은 Object DataSource 컨트롤 이 이 유형의 인 스 턴 스 를 만 들 수 있 도록 인자 가 없 는 기본 구조 함수 가 있어 야 합 니 다.이 형식 은 ObjectDataSource 컨트롤 이 데이터 바 인 딩 컨트롤 로 전달 하 는 값 으로 대상 을 채 울 수 있 도록 설정 가능 한 속성 이 있어 야 합 니 다.ObjectDataSource 컨트롤 의 속성 명 은 데이터 바 인 딩 컨트롤 이 전달 하 는 값 의 매개 변수 이름과 완전히 일치 해 야 합 니 다.
DataObjectTypeName 속성 을 설정 하고 ObjectDataSource 컨트롤 이 데이터 바 인 딩 컨트롤 과 연 결 될 때 InsertMethod 와 DeleteMethod 속성 이 지정 한 방법 은 DataObjectTypeName 속성 에서 지정 한 형식의 매개 변 수 를 각각 가 져 야 합 니 다.ConflictDetection 속성 이 OverwriteChanges 값 으로 설정 되면 UpdateMethod 속성 이 지정 한 방법 은 DataObject TypeName 속성 에서 지정 한 형식의 인자 가 있어 야 합 니 다.ConflictDetection 속성 이 CompareAllValues 값 으로 설정 되면 UpdateMethod 속성 이 지정 한 방법 은 DataObject TypeName 속성 에서 지정 한 두 개의 인자 가 있어 야 합 니 다.첫 번 째 매개 변 수 는 원시 값 을 포함 합 니 다.두 번 째 매개 변 수 는 새 값 을 포함 합 니 다.
DataObjectTypeName 속성 은 ObjectDataSource 컨트롤 과 연 결 된 ObjectDataSourceView 의 DataObjectTypeName 속성 에 위탁 합 니 다.
3.예시 코드
다음 코드 예제 에 서 는 DataObject TypeName 속성 을 사용 하 는 방법 을 보 여 줍 니 다.모든 매개 변수 값 을 대상 으로 합 치 는 형식 을 보 여 줍 니 다.Aggregatedata 클래스 의 선택 방법 은 Name 과 Number 라 는 열 이 있 는 DataTable 대상 을 되 돌려 줍 니 다.마찬가지 로 뉴 데이터 클래스 는 두 개의 읽 기/쓰기 속성 Name 과 Number 를 정의 합 니 다.Aggregatedata 류 의 Insert 방법 은 뉴 데이터 형식의 인 자 를 가지 고 있 습 니 다.ObjectDataSource 의 TypeName 속성 은 AggregatData 로,DataObjectTypeName 속성 은 NewData 로 설정 합 니 다.
프론트 코드:
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS" Assembly="Samples.AspNet.CS" %>
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ObjectDataSource - DataObjectTypeName Property Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:DetailsView
ID="DetailsView1"
runat="server"
AllowPaging="True"
AutoGenerateInsertButton="True"
DataSourceID="ObjectDataSource1"
Height="50px"
Width="125px">
</asp:DetailsView>
<asp:ObjectDataSource
ID="ObjectDataSource1"
runat="server"
DataObjectTypeName="Samples.AspNet.CS.NewData"
InsertMethod="Insert"
SelectMethod="Select"
TypeName="Samples.AspNet.CS.AggregateData">
</asp:ObjectDataSource>
</div>
</form>
</body>
</html>
배경 코드:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace Samples.AspNet.CS
{
/// <summary>
/// Summary description for AggregateData
/// </summary>
public class AggregateData
{
public AggregateData()
{
}
static DataTable table;
private DataTable CreateData()
{
table = new DataTable();
table.Columns.Add("Name", typeof(string));
table.Columns.Add("Number", typeof(int));
table.Rows.Add(new object[] { "one", 1 });
table.Rows.Add(new object[] { "two", 2 });
table.Rows.Add(new object[] { "three", 3 });
return table;
}
public DataTable Select()
{
if (table == null)
{
return CreateData();
}
else
{
return table;
}
}
public int Insert(NewData newRecord)
{
table.Rows.Add(new object[] { newRecord.Name, newRecord.Number });
return 1;
}
}
public class NewData
{
private string nameValue;
private int numberValue;
public string Name
{
get { return nameValue; }
set { nameValue = value; }
}
public int Number
{
get { return numberValue; }
set { numberValue = value; }
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
ASP.NET 에서 ObjectDataSource 컨트롤 의 DataObjectTypeName 속성데이터 바 인 딩 컨트롤 에 연 결 된 ObjectDataSource 컨트롤 의 기본 동작 은 데이터 바 인 딩 컨트롤 이 데이터 원본 의 모든 매개 변수 에 Parameter 대상 을 만 드 는 것 입 니 다.업무...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.