eep2006 基礎教學講義
DESCRIPTION
EEP2006 基礎教學講義. Andy Kao. 課程大綱 ( 一 ). 課程大綱 ( 二 ). 課程大綱 ( 三 ). .NET & VS2005. .NET 的架構. VS 2005 (C#,VB,J#..). WinForm. ASP.NET. Base Class Library. CLR ( Common Language Runtime ). Windows. 認識 .NET. 是一個高階平台,不是個 OS 是一個方便於程式師的開發平台 更強的 VM 虛擬機概念 ( Managed Code ) - PowerPoint PPT PresentationTRANSCRIPT
課程大綱課程大綱 (( 一一 ))進度進度 課程內容課程內容 時間時間
第一日上午
EEP 簡介 50
* 下課休息 15
C# 基礎認識 40
上機實習 30
單檔設計 30
中午休息
第一日下午
上機實習 30
預設與控制 40
* 下課休息 15
一對多設計 30
上機實習 30
使用 Wizard 20
上機實習 20
課程大綱課程大綱 (( 二二 ))進度進度 課程內容課程內容 時間時間
第二日上午
關連設計 30
上機實習 30
* 下課休息 15
View 的設計與自動編號 30
上機實習 30
中午休息
第二日下午
過帳處理 40
上機實習 40
* 下課休息 15
Server Method 30
上機實習 30
Template 的開發 20
課程大綱課程大綱 (( 三三 ))進度進度 課程內容課程內容 時間時間
第三日上午
ASP .NET 慨念 20
單檔設計 20
上機實習 20
* 下課休息 15
一對多設計與 Wizard 40
上機實習 40
中午休息
第三日下午
預設與檢核 20
關連與日期輸入 20
上機實習 40
* 下課休息 15
查詢與報表設計 30
上機實習 30
.NET.NET 的架的架構構
Windows
CLR (Common Language Runtime )
ASP.NET WinForm
Base Class Library
VS 2005 (C#,VB,J#..)
認識認識 .NE.NETT
是一個高階平台,不是個 是一個高階平台,不是個 OSOS
是一個方便於程式師的開發平台是一個方便於程式師的開發平台更強的 更強的 VM VM 虛擬機概念 虛擬機概念 ( Managed Co( Managed Code )de )
強大的資料交換機制 強大的資料交換機制 ( SOAP / XML )( SOAP / XML )
完整強大的基礎元件庫 完整強大的基礎元件庫 ( BCL )( BCL )
更容易的部署及安裝更容易的部署及安裝多平台 多平台 ( Win / Web / Mobile )( Win / Web / Mobile )
認識認識 VS 200VS 20055
支持支持 .NET 2.0 / ASP .NET 2.0.NET 2.0 / ASP .NET 2.0
多語言 多語言 ( VB / C++ / C# / J# )( VB / C++ / C# / J# )
支援完整的支援完整的 SDLCSDLC
內建程式分析與測量工具內建程式分析與測量工具內建測試工具內建測試工具專案管理控制專案管理控制親和親和 IDEIDE
EEP 2006EEP 2006 的概觀的概觀
Windows
CLR (Common Language Runtime )
VS 2005 (C#,VB,J#..)
EEP 2006
Base Class Library
Web
EEP S/D Module
ASP.NET WinForm
EEP2006 EEP2006 A/P Server A/P Server 架構架構
Microsoft VS 2005 Microsoft VS 2005
.NET 2.0.NET 2.0
EEP A/P ServerEEP A/P ServerEEP A/P ServerEEP A/P Server
多資料庫管理多資料庫管理
Database ServerDatabase Server
Pooling 管理Pooling 管理 Log 管理系統Log 管理系統
Method 管理Method 管理 平衡負載管理平衡負載管理 Login 管理Login 管理
版本管理版本管理Bug 管理Bug 管理
ServiceManagerServiceManager InfoCommandInfoCommand InfoDataSourceInfoDataSource
UpdateCompUpdateComp TransactionTransaction AutoNumAutoNum
ServerServer 端元件端元件
ServiceManagerServiceManager InfoConnectionInfoConnection InfoCommandInfoCommand InfoDataSourceInfoDataSource UpdateCompUpdateComp AutoNumberAutoNumber InfoTransactionInfoTransaction LoginfoLoginfo
ClientClient 端元件端元件
InfoDataSetInfoDataSet CacheDataSetCacheDataSet InfoBindingSourceInfoBindingSource InfoNavigatorInfoNavigator DefaultValidateDefaultValidate InfoTextBoxInfoTextBox InfoDataGridViewInfoDataGridView
InfoRefValInfoRefVal InfoDataTimePickerInfoDataTimePicker InfoComboBoxInfoComboBox AutoSeqAutoSeq MultiLanguageMultiLanguage ClientQueryClientQuery
Solution/ProjectSolution/Project cs/Designer.cs/resxcs/Designer.cs/resx ToolBox/Property/EventToolBox/Property/Event View CodeView Code Say HelloSay Hello 的程式的程式
MessageBox.Show("hello ! EEP2006");MessageBox.Show("hello ! EEP2006");
Open FormOpen Form 的程式的程式 Form Form_temp = new Form2();Form Form_temp = new Form2(); Form_temp.Show();Form_temp.Show();
第一個第一個 VS 2005VS 2005 程程式式
Using (namespace)Using (namespace) 變數變數 :Bool,int,long,float,double,:Bool,int,long,float,double,
char,string,enum,struct,[]char,string,enum,struct,[] 運算元運算元 : +,-,*,/,>,>,>=,<=,!=,== ,: +,-,*,/,>,>,>=,<=,!=,== ,
&&,||&&,|| If/else/while/for/switchIf/else/while/for/switch Object AccessObject Access
基本指令基本指令
一個簡單的程式一個簡單的程式
將將 TextBox1TextBox1 的文字轉成的文字轉成 ASCIIASCII 碼碼listBox1.Items.Clear();listBox1.Items.Clear();
for (int i=0;i<textBox1.TextLength;i++)for (int i=0;i<textBox1.TextLength;i++)
{ string x = textBox1.Text;{ string x = textBox1.Text;
listBox1.Items.Add(Convert.ToInt16(x[i]));listBox1.Items.Add(Convert.ToInt16(x[i]));
}}
EEP2006EEP2006 安裝安裝
SETUP EEP2006SETUP EEP2006
initEEP initEEP (InfoRemoteModule,Srvtools)(InfoRemoteModule,Srvtools)
OPEN Solution1.slnOPEN Solution1.sln
Export TemplateExport Template
EEPServer.EXE EEPServer.EXE
DB ManagerDB Manager
Create System TableCreate System Table
單檔設計單檔設計
InfoCommandInfoCommand
InfoDataSetInfoDataSetUpdateCompUpdateComp
DatabaseDatabaseselect
dump
Insert/Update/Delete
Insert/Update/DeleteGet Columns
ClientClient
A/P ServerA/P ServerDB ServerDB Server
InfoBindingSourceInfoBindingSource
Binding
單檔單檔 ServerServer 端開發端開發
Add Server Project Add Server Project
Server: DB Module define Server: DB Module define (InfoConnection, InfoCommand, (InfoConnection, InfoCommand, UpdateComp)UpdateComp)
Build Build
Package ManagerPackage Manager
單檔單檔 ClientClient 端開發端開發
Add Client ProjectAdd Client Project
Client: Dataset Define Client: Dataset Define (InfoDataSet ,InfoBindingSource, (InfoDataSet ,InfoBindingSource, InfoDataGridView, InfoTextBox, InfoDataGridView, InfoTextBox, InfoNavigator )InfoNavigator )
BuildBuild
EEP Manager/Menu ItemEEP Manager/Menu Item
DefaultValidateDefaultValidate 控控制制
Default: Default: 公司名稱公司名稱 // 最近訂單日最近訂單日Carryon: Carryon: 預設上一筆預設上一筆 ..
動態動態 Default: Default: 取得日期取得日期 ..
Validate: Validate: 連絡人不為空連絡人不為空 ..
Validate: Validate: 地址不能都空白地址不能都空白 (Code)(Code)
Range: CityRange: City 設定範圍值設定範圍值 ..
AutoDisibleControl=TrueAutoDisibleControl=True
CloseProtect=TrueCloseProtect=True
一對多設計一對多設計
MasterMasterInfoCommandInfoCommand
InfoDataSetInfoDataSet UpdateCompUpdateComp
DatabaseDatabase
DetailDetailInfoCommandInfoCommand
UpdateCompUpdateComp
InfoDataSourceInfoDataSource
MasterMasterInfoBindingSourceInfoBindingSource
select
dump
Relation
Insert/Update/Delete
Insert/Update/Delete
Insert/Update/Delete
ClientClient
A/P ServerA/P ServerDB ServerDB Server
DetailDetailInfoBindingSourceInfoBindingSource
Binding
一對多一對多 ServerServer 端開端開發發
Add Server Project Add Server Project
Server: DB Module define Server: DB Module define (InfoConnection, InfoCommand, (InfoConnection, InfoCommand, InfoDataSource, UpdateComp)InfoDataSource, UpdateComp)
Build Build
Package ManagerPackage Manager
一對多一對多 ClientClient 端開端開發發
Add Client ProjectAdd Client Project
Client: InfoDataSet Define (InfoDataSet Client: InfoDataSet Define (InfoDataSet ,Maser InfoBindingSource, ,Maser InfoBindingSource,
Detail InfoBindingSource, InfoTextBox, Detail InfoBindingSource, InfoTextBox, InfoDataGridView, InfoNavigator )InfoDataGridView, InfoNavigator )
BuildBuild
EEP Manager/Menu ItemEEP Manager/Menu Item
運算式與加總運算式與加總InfoDataGridView.Columntype: InfoDatInfoDataGridView.Columntype: InfoDataGridViewExpressionColumn, aGridViewExpressionColumn,
Expression: UnitPrice*quantity
InfoDataGridView.TotalColumnsInfoDataGridView.TotalColumns
InfoDataGridView.TotalChangedInfoDataGridView.TotalChanged 事件事件 if (e.ColumnName == "Amount" && if (e.ColumnName == "Amount" &&
(infoNavigator1.GetCurrentState() == (infoNavigator1.GetCurrentState() == "Inserting" || "Inserting" || infoNavigator1.GetCurrentState() == "Editing")infoNavigator1.GetCurrentState() == "Editing")
{{
InfoTextBox7.Text = e.TotalValue.ToString();InfoTextBox7.Text = e.TotalValue.ToString();
}}
單檔單檔 WizardWizard
Server Package WizardServer Package Wizard
(( 選擇選擇 DBAlias,Table,Columns,DBAlias,Table,Columns,
KeyFields)KeyFields)
Client Package WizardClient Package Wizard
(( 選擇選擇 RemoteNameRemoteName 與與 Columns)Columns)
一對多一對多 WizardWizard
Server Package WizardServer Package Wizard
(( 選擇選擇 DBAlias,DBAlias, 一對多一對多 Table, ColTable, Columns,KeyFields)umns,KeyFields)
Client Package WizardClient Package Wizard
(( 選擇選擇 RemoteNameRemoteName 與與 Columns)Columns)
使用使用 Left JoinLeft Join
ServerServer 端端 ::
InfoCommand: InfoCommand: 使用使用 Left JoinLeft Join
UpdateComp: UpdateComp: 設定設定 ExceptJoinExceptJoin
ClientClient 端端 ::
InfoTextBox/ InfoDataGridViewInfoTextBox/ InfoDataGridView
ReadOnly=True.ReadOnly=True.
使用使用 RefValRefVal
兩種連結兩種連結 :DataSource/SelectCommand:DataSource/SelectCommand
DataSource: DataSource: 連連 InfoBindingSource->InInfoBindingSource->InfoDataSet->InfoCommandfoDataSet->InfoCommand
SelectCommand: GLModuleSelectCommand: GLModule 共用共用 InfoInfoComand (Comand ( 要設要設 SelectAlias)SelectAlias)
設定設定 DisplayMember, ValueMemberDisplayMember, ValueMember
使用使用 InfoRefValBox, InfoRefValBox, 設定設定 RefValRefVal
ViewDataSetViewDataSet 優化效能優化效能
MasterMasterInfoCommandInfoCommand
InfoDataSetInfoDataSet UpdateCompUpdateComp
DatabaseDatabase
DetailDetailInfoCommandInfoCommand
UpdateCompUpdateComp
InfoDataSourceInfoDataSource
MasterMasterInfoBindingSourceInfoBindingSource
select
dump
Relation
Insert/Update/Delete
Insert/Update/Delete
Insert/Update/Delete
ClientClient
A/P ServerA/P ServerDB ServerDB Server
DetailDetailInfoBindingSourceInfoBindingSource
Binding
ViewViewInfoCommandInfoCommand
select
ViewViewInfoDataSetInfoDataSet
ViewViewInfoDataSetInfoDataSet
Relations
ViewDataSetViewDataSet
Server Module: Server Module: 多貼一個多貼一個 InfoCoInfoCommandmmand
Add Client Project Add Client Project
Client: Client: 貼一個貼一個 ViewView 的的 InfoDataInfoDataSetSet
& View& View 的的 InfoBindingSource InfoBindingSource
& InfoBindingSource.Relations& InfoBindingSource.Relations
InfoNavigator.ViewBindingSourceInfoNavigator.ViewBindingSource
自動編號設定自動編號設定
Server: AutonumberServer: Autonumber
MYGETDATE()MYGETDATE()
{ { string ret = System.DateTime.Today.ToString("yyMMdd");string ret = System.DateTime.Today.ToString("yyMMdd");
return ret; }return ret; }
System Table: SysAutonumSystem Table: SysAutonum
Client: AutoSeq Client: AutoSeq
ServerModify: UpdateComp,InfoDataSetServerModify: UpdateComp,InfoDataSet
ServerModifyColumns: UpdateCompServerModifyColumns: UpdateComp
ServerModifyGetMax: UpdateCompServerModifyGetMax: UpdateComp
TransactionTransaction 原理原理
Append Mode:AutoAppendExceptIgnoreAlwaysAppend
InfoCommandInfoCommand
A/P ServerA/P Server
ClientClient
DatabaseDatabase
DB ServerDB Server
InfoDataSetInfoDataSet
select
Active UpdateCompUpdateComp
Apply
Insert/Delete/Update
Update (inc/dec/replace)
變更變更 NorthwindNorthwind
alter table products add alter table products add LastOrderedPrice money nullLastOrderedPrice money null
alter table customers add LastOrderedDate datetime nullalter table customers add LastOrderedDate datetime null
alter table customers add FreightAmount money nullalter table customers add FreightAmount money null
alter table orders add OrderNo varchar(10) nullalter table orders add OrderNo varchar(10) null
create table dbo.OrderedLog create table dbo.OrderedLog
(SeqID int identity (1,1) NOT NULL,(SeqID int identity (1,1) NOT NULL,
OrderID int NOT NULL,OrderID int NOT NULL,
ProductID int NOT NULL,ProductID int NOT NULL,
UnitPrice money NOT NULL,UnitPrice money NOT NULL,
Quantity smallint NOT NULL)Quantity smallint NOT NULL)
TransactionTransaction 的實例的實例
Master Master InfoCommandInfoCommand
A/P ServerA/P Server
ClientClient
DB ServerDB Server
MasterMasterCDSCDS
select
ActiveMasterMaster
UpdateCompUpdateComp
Apply
OrdersOrders
CustomersCustomers
Inc OrderedAmoutInc OrderedAmoutReplace Replace LastOrderedDateLastOrderedDate
Insert/Delete/Update
Order DetailsOrder Details
DetailDetailInfoCommandInfoCommand
select
DetailDetailCDSCDS
DetailDetailUpdateCompUpdateComp
Apply
Insert/Delete/Update
ProductsProducts
OrderedLogOrderedLog
Inc UnitsOnOrderInc UnitsOnOrderReplace Replace LastOrderedPriceLastOrderedPrice
Log Transaction
TransactionTransaction 設計設計
Orders Transaction : CustomersOrders Transaction : Customers
Freight Inc OrderedAmoutFreight Inc OrderedAmout
Replace LastOrderedDateReplace LastOrderedDate
Order Details Transaction: ProductsOrder Details Transaction: Products
Quantity Inc UnitsOnOrderQuantity Inc UnitsOnOrder
UnitPrice Replace LastOrderedPriceUnitPrice Replace LastOrderedPrice
AlwaysAppend: OrderedLogAlwaysAppend: OrderedLog
Server Method1……
Server Method2……
Server Method3……
Server Method4…..
Server MethodServer Method 原理原理
InfoCommandInfoCommand
A/P ServerA/P Server
ClientClient
DatabaseDatabase
DB ServerDB Server
select
Call 同步 /非同步
ServiceManagerServiceManager
Update
Server MethodServer Method 設計設計
設計設計 Server Method:Server Method:public object CallTest(object[] objParam)public object CallTest(object[] objParam)
{string str = objParam[0].ToString();{string str = objParam[0].ToString();
string sql= "select avg(UnitPrice) as AvgPrice from [order details] Where ProductID=";string sql= "select avg(UnitPrice) as AvgPrice from [order details] Where ProductID=";
sql = sql + str;sql = sql + str;
DataSet Tmp = DataSet Tmp = ExecuteSql("view", sql, true);ExecuteSql("view", sql, true);string retval=Tmp.Tables[0].Rows[0][‘AvgPrice’].ToString();string retval=Tmp.Tables[0].Rows[0][‘AvgPrice’].ToString();
Thread.Sleep(5000);Thread.Sleep(5000);
object ret;object ret;
ret = new object[] { 0, retval};ret = new object[] { 0, retval};
return ret; }return ret; }
定義定義 ServiceManagerServiceManager
Server MethodServer Method 設計設計同步同步 Client:Client:
private void button1_Click(object sender, EventArgs e)private void button1_Click(object sender, EventArgs e)
{ object[] param;{ object[] param;
param=new object[] {param=new object[] {textBox1.TexttextBox1.Text};};
object[] backParam = CliUtils.CallMethod("STEST2", "CallTest",param);object[] backParam = CliUtils.CallMethod("STEST2", "CallTest",param);
MessageBox.Show(backParam[1].ToString());MessageBox.Show(backParam[1].ToString());
}}
非同步非同步 Client:Client:public void MyCallBack(object[] oRet)public void MyCallBack(object[] oRet)
{ MessageBox.Show((string)oRet[1]);{ MessageBox.Show((string)oRet[1]);
}}
object[] backParam = CliUtils.AsyncCallMethod("STEST2", "CallTest",paraobject[] backParam = CliUtils.AsyncCallMethod("STEST2", "CallTest",param,MyCallBack);m,MyCallBack);
認識認識 ASP .NETASP .NET
語言語言 (VB/C#/J#..)(VB/C#/J#..)Code BehindCode Behind 技術技術元件化的方式元件化的方式好的好的 debugdebug 環境環境Rander Rander 的技術的技術更強資料連結更強資料連結 (ADO .NET(ADO .NET 與與 XMXML)L)更容易的更容易的 WebServiceWebService
WebWeb 端元件端元件 WebDataSetWebDataSet WebDataSourceWebDataSource WebDetailsViewWebDetailsView WebFormViewWebFormView WebGridViewWebGridView WebDataListWebDataList WebNavigatorWebNavigator WebDefaultWebDefault WebValidateWebValidate WebRefValWebRefVal WebDropDownListWebDropDownList WebDataTimePickerWebDataTimePicker WebTimePickerWebTimePicker WebDateTimeViewerWebDateTimeViewer WebImageWebImage
WebTreeViewWebTreeView WebListBoxListWebListBoxList WebAutoSeqWebAutoSeq WebStatusStripWebStatusStrip WebMultiLanguageWebMultiLanguage WebClientQueryWebClientQuery WebTranslateWebTranslate WebRefButtonWebRefButton WebHyperLinkWebHyperLink WebMenuWebMenu WebExpressionControlWebExpressionControl WebCheckBoxWebCheckBox WebGridTextBoxWebGridTextBox WebValidateBoxWebValidateBox WebAutoTestWebAutoTest
單檔設計單檔設計
InfoCommandInfoCommand
WebDataSetWebDataSetUpdateCompUpdateComp
DatabaseDatabaseselect
dump
Insert/Update/Delete
Insert/Update/DeleteGet Columns
A/P ServerA/P ServerDB ServerDB Server
WebDataSourceWebDataSource
Binding
IIS ServerIIS Server
GridView
單檔單檔 WebWeb 端開發端開發
Add Web Form (From WSingle)Add Web Form (From WSingle)
View Component DesignerView Component Designer 中中 : : 設設定定 WebDataSet & Save.WebDataSet & Save.
設定設定 WebDataSourceWebDataSource 的的 DataMembDataMemberer
設定設定 WebGridViewWebGridView 的的 DataSourceIDataSourceID & Refresh SchemaD & Refresh Schema 產生欄位產生欄位 BuilBuildd
EEP Manager/Menu ItemEEP Manager/Menu Item
一對多設計一對多設計
MasterMasterInfoCommandInfoCommand
WebDataSetWebDataSet UpdateCompUpdateComp
DatabaseDatabase
DetailDetailInfoCommandInfoCommand
UpdateCompUpdateComp
InfoDataSourceInfoDataSource
MasterMasterWebDataSourceWebDataSource
select
dump
Relation
Insert/Update/Delete
Insert/Update/Delete
Insert/Update/Delete
A/P ServerA/P ServerDB ServerDB Server
DetailDetailWebDataSourceWebDataSource
Binding
IIS ServerIIS Server
一對多一對多 WebWeb 端開發端開發Add Web Form (From WMasterDetail2)Add Web Form (From WMasterDetail2)
View Component DesignerView Component Designer 中中 : : 設定設定 WebDatWebDataSet & Save.aSet & Save.
分別設定分別設定 MasterMaster 與與 DetailDetail 各自各自 WebDataSouWebDataSourcerce 的的 DataMemberDataMember
Master: Master: 設定設定 WebDetailViewWebDetailView 的的 DataSourceIDataSourceID & Refresh SchemaD & Refresh Schema 產生欄位 產生欄位 Detail: Detail: 設定設定 WebGridViewWebGridView 的的 DataSourceID DataSourceID & Refresh Schema& Refresh Schema 產生欄位產生欄位Build / EEP Manager/Menu ItemBuild / EEP Manager/Menu Item
DefaultValidateDefaultValidate 控控制制
Default: Default: 公司名稱公司名稱Carryon: Carryon: 地址預設上一筆地址預設上一筆 ..
動態動態 Default: Default: 取得日期取得日期 ..
Validate: Validate: 連絡人不為空連絡人不為空 ..
Validate: Validate: 地址不能都空白地址不能都空白 (Code)(Code)
Range: CityRange: City 設定範圍值設定範圍值 ..
DuplicateCheck=True/FalseDuplicateCheck=True/False
DuplicateCheckMode=Local/WhereDuplicateCheckMode=Local/Where
DefaultValidateDefaultValidate 控控制制
動態動態 Default Code:Default Code:Public object Mydefault()Public object Mydefault()
{ return System.DateTime.Today;{ return System.DateTime.Today;
}}
動態動態 Validate:Validate:public bool mycheck(object var)public bool mycheck(object var)
{ if (var.ToString().Length >= 2){ if (var.ToString().Length >= 2)
{ if (var.ToString().Substring(0,2) == "{ if (var.ToString().Substring(0,2) == " 台北台北 ") return true;") return true;
} return false; } return false;
}}
Master/Detail Master/Detail 自增值處理自增值處理
使用使用 WebRefValWebRefVal
兩種連結兩種連結 :WebDataSet/WebDatasourc:WebDataSet/WebDatasourcee
WebDataSet: WebDataSet: 連連 WebDataSetWebDataSet
->InfoCommand->InfoCommand
SelectCommand: GLModuleSelectCommand: GLModule 共用共用 InfoInfoComand (Comand ( 要設要設 SelectAlias)SelectAlias)
Convert To Template & BindingConvert To Template & Binding
設定設定 DisplayMember, ValueMemberDisplayMember, ValueMember
Copy To InsertItemTemplateCopy To InsertItemTemplate
使用使用 WebDateTimePickerWebDateTimePicker
Convert To TemplateConvert To Template
貼入貼入 WebDateTimePickerWebDateTimePicker
BindingBinding
Copy To InsertItemTemplateCopy To InsertItemTemplate
使用使用 WebGirdViewWebGirdView 設計設計在在 View Component DesignerView Component Designer 中中 : : 增加增加 WebDataSetWebDataSet並連到並連到 ViewView 的的 InfoCommand & Save.InfoCommand & Save.
增加增加 WebDataSourceWebDataSource 連接到連接到 WebDataSetWebDataSet 與設定與設定 DatDataMember.aMember.
加入加入 WebGridViewWebGridView 並連結到並連結到 WebDataSource , RefreWebDataSource , Refresh Schemash Schema 來新增欄位來新增欄位 ..
設定設定 WebNavigator.ViewBindObjectWebNavigator.ViewBindObject 到到 WebGridVieWebGridView.w.
在在 WebGridViewWebGridView 的的 SelectedIndexChangedSelectedIndexChanged 事件中事件中 ::
Master.ExecuteSync(WebGridView1);Master.ExecuteSync(WebGridView1);
DDataBind();ataBind();
使用使用 WebFormViewWebFormView 設設計計
Add Web Form (From WMasterDetail1)Add Web Form (From WMasterDetail1)
View Component DesignerView Component Designer 中中 : : 設定設定 WebDataSet & WebDataSet & Save.Save.
分別設定分別設定 MasterMaster 與與 DetailDetail 各自各自 WebDataSourceWebDataSource 的的DataMemberDataMember
Master: Master: 設定設定 WebFormViewWebFormView 的的 DataSourceID & RefDataSourceID & Refresh Schemaresh Schema 產生欄位產生欄位 ..
調整調整 WebFormViewWebFormView 在在 ItemTemplateItemTemplate 與與 UpdateTemUpdateTemplateplate 及及 InsertTemplateInsertTemplate 等版面等版面 ..
Detail: Detail: 設定設定 WebGridViewWebGridView 的的 DataSourceID & RefrDataSourceID & Refresh Schemaesh Schema 產生欄位產生欄位Build / EEP Manager/Menu ItemBuild / EEP Manager/Menu Item
使用使用 TranslateTranslate 元件設計元件設計Add Web Form (From WSingle1)Add Web Form (From WSingle1)
View Component DesignerView Component Designer 中中 : : 設定設定 WebDataSet & WebDataSet & Save.Save.
設定設定 MasterWebMasterWeb 與與 DataSourceDataSource 的的 DataMemberDataMember
Master: Master: 設定設定 WebFormViewWebFormView 的的 DataSourceID & RefDataSourceID & Refresh Schemaresh Schema 產生欄位產生欄位 ..
貼入貼入 TranslateTranslate 元件元件 , , 連結到連結到 DataSourceIDDataSourceID 與與 WebWebFormView.FormView.
在原來在原來 WebGirdViewWebGirdView 中設定中設定 EditURLEditURL 連結連結 ..
也可使用也可使用 WebGridView.OpenEditURL(Mode). WebGridView.OpenEditURL(Mode).
WebClientQueryWebClientQuery 設計設計Add Web Form (From WQuery)Add Web Form (From WQuery)
View Component DesignerView Component Designer 中中 : : 設定設定 WebDataSet & SaWebDataSet & Save.ve.
設定設定 WebDataSourceWebDataSource 的的 DataMember.DataMember.
設定連結設定連結 WebClientQueryWebClientQuery 與 與 WebDataSource, WebDataSource, 並設定並設定ColumnsColumns 查詢欄位查詢欄位 ..
Page_LoadPage_Load 中設計中設計 WebClientQuery1.Show(Panel1);WebClientQuery1.Show(Panel1);
protected void Button1_Click(object sender,EventArgs e)protected void Button1_Click(object sender,EventArgs e)
{ WebClientQuery1.Excute(Panel1);{ WebClientQuery1.Excute(Panel1);
}}
protected void Button2_Click(object sender, EventArgs e)protected void Button2_Click(object sender, EventArgs e)
{ WebClientQuery1.Clear(Panel1);{ WebClientQuery1.Clear(Panel1);
}}
BuildBuild
EEP Manager/Menu ItemEEP Manager/Menu Item
Web Report Web Report 設計設計Add Web Form (From WReport)Add Web Form (From WReport)
在在 View Component DesignerView Component Designer 中中 : : 增加增加 WebDataSetWebDataSet 並連到並連到 ReporReportt 的的 InfoCommand & Save To Report (xml)InfoCommand & Save To Report (xml)
設定設定 Report WebDataSourceReport WebDataSource 的的 DataMember.DataMember.
設定設定 CrystalReportSourceCrystalReportSource 的的 Configure Report Source, New A CrysConfigure Report Source, New A CrystalReport(rpt)talReport(rpt)
在在 CrystalReport/Field ExplorerCrystalReport/Field Explorer 以以 Database Expert/Create New CoDatabase Expert/Create New Connection/ADO.Netnnection/ADO.Net 選擇選擇 EEPNetReportEEPNetReport 之下的之下的 xmlxml 檔案檔案將欄位拉入將欄位拉入 CrystalReportCrystalReport 的的 DetailDetail 中中設定設定 CrystalReportViewerCrystalReportViewer 連結到連結到 CrystalReportSourceCrystalReportSource
在在 CrystalReportSource.Report.DataSourceCrystalReportSource.Report.DataSource 中設定中設定 DataSourceDataSource 連連到到 WebDataSourceWebDataSource 中中 , , 並指定其內的並指定其內的 DataMember.DataMember.
Build/EEP Manager/Menu ItemBuild/EEP Manager/Menu Item