chore: 首次簽入 Thinkyu ASP.NET 專案

- 加入 Visual Studio / ASP.NET .gitignore
- 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
This commit is contained in:
2026-09-10 09:42:37 +08:00
commit 577060bc78
2496 changed files with 501389 additions and 0 deletions
@@ -0,0 +1,507 @@
<%@ Page Title="" Language="C#" MasterPageFile="~/Site2.Master"
AutoEventWireup="true" CodeBehind="課程基本資料.aspx.cs" Inherits="Education.Forms.基本資料.課程基本資料" %>
<%@ Register Assembly="WebLib" Namespace="WebLib" TagPrefix="weblib" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1"
runat="server">
<asp:LinkButton ID="tab處理" runat="server" CssClass="tabbuttonselected">處理</asp:LinkButton>
<asp:LinkButton ID="tab查詢" runat="server" CssClass="tabbutton">查詢</asp:LinkButton>
<div style="border-top: 1px solid gray;">
<asp:MultiView ID="MultiView1" runat="server">
<asp:View ID="View查詢" runat="server">
<div>
<asp:LinkButton ID="btnSearch" runat="server"
CssClass="button blue80" Text="查詢"
OnClick="btnSearch_Click" />
<asp:LinkButton ID="btnClear" runat="server"
CssClass="button red80" Text="清除"
OnClick="btnClear_Click" />
</div>
<table border="0"
style="table-layout: fixed;">
<tr>
<td colspan="1" class="widthcontrol" style="width: 90px;"></td>
<td colspan="1" class="widthcontrol" style="width: 150px;"></td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程類別Label3" runat="server" Text="課程類別"></asp:Label>
</td>
<td class="datainput" colspan="1">
<weblib:WDropDownList ID="ddl課程類別_Search" runat="server"
CssClass="inputFull" DataSourceID="dsBCLS"
DataTextField="Name" DataValueField="Value">
</weblib:WDropDownList>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程編號Label3" runat="server" Text="課程編號"></asp:Label>
</td>
<td class="datainput" colspan="1">
<asp:TextBox ID="txt課程編號_Search" runat="server"
CssClass="inputFull" MaxLength="50" Text=""></asp:TextBox>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程名稱Label3" runat="server" Text="課程名稱"></asp:Label>
</td>
<td class="datainput" colspan="5">
<asp:TextBox ID="txt課程名稱_Search" runat="server"
CssClass="inputFull" MaxLength="100" Text=""></asp:TextBox>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb訓練對象Label3" runat="server" Text="訓練對象"></asp:Label>
</td>
<td class="datainput" colspan="1">
<asp:TextBox ID="txt訓練對象_Search" runat="server"
CssClass="inputFull" MaxLength="50" Text=""></asp:TextBox>
</td>
</tr>
</table>
<asp:Label ID="lbMessage" runat="server"
CssClass="ErrorMessage"
EnableViewState="False"></asp:Label>
</asp:View>
<asp:View ID="View處理" runat="server">
<asp:ObjectDataSource ID="dsForm" runat="server"
DataObjectTypeName="Education.課程" DeleteMethod="DeleteOne"
InsertMethod="InsertOne"
OldValuesParameterFormatString="original_{0}"
SelectMethod="SelectOne" TypeName="Education.DAC_課程"
UpdateMethod="UpdateOne"
OnObjectCreating="dsForm_ObjectCreating">
<SelectParameters>
<asp:ControlParameter ControlID="GridView1" Name="課程編號"
PropertyName="SelectedValue" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
<asp:ObjectDataSource ID="dsGrid" runat="server"
OldValuesParameterFormatString="original_{0}"
SelectMethod="Select" TypeName="Education.DAC_課程"
OnObjectCreating="dsGrid_ObjectCreating">
<SelectParameters>
<asp:Parameter DefaultValue="true" Name="noInputReturnAll"
Type="Boolean" />
<asp:ControlParameter ControlID="txt課程編號_Search"
Name="課程編號" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="ddl課程類別_Search"
Name="課程類別" PropertyName="SelectedValue" Type="String" />
<asp:ControlParameter ControlID="txt課程名稱_Search"
Name="課程名稱" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="txt訓練對象_Search"
Name="訓練對象" PropertyName="Text" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
<asp:ObjectDataSource ID="dsBCLS" runat="server"
OldValuesParameterFormatString="original_{0}"
SelectMethod="Get類別資料By大類ForDropDown"
TypeName="Education.DAC_BCLS"
OnObjectCreating="dsBCLS_ObjectCreating">
<SelectParameters>
<asp:Parameter DefaultValue="課程類別" Name="大類"
Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
<asp:ObjectDataSource ID="dsBCLS0" runat="server"
OldValuesParameterFormatString="original_{0}"
OnObjectCreating="dsBCLS_ObjectCreating" SelectMethod="Get類別資料By大類ForDropDown"
TypeName="Education.DAC_BCLS">
<SelectParameters>
<asp:Parameter DefaultValue="課程類型" Name="大類" Type="String" />
</SelectParameters>
</asp:ObjectDataSource>
<asp:FormView ID="FormView1" runat="server" EnableModelValidation="True"
EnableViewState="False" DataKeyNames="課程編號,課程類別,DB_APPNO"
DataSourceID="dsForm">
<ItemTemplate>
<div>
<asp:LinkButton ID="btnInsert" runat="server" Text="新增" CommandName="New"
CssClass="button blue80" />
<asp:LinkButton ID="btnUpdate" runat="server" Text="更正" CommandName="Edit"
CssClass="button green80" />
<asp:LinkButton ID="btnDelete" runat="server" Text="刪除" CommandName="Delete"
CssClass="button red80" OnClientClick="return confirm(&quot;是否確定刪除此筆資料?&quot;);" />
</div>
<table border="0" class="fixedwithoutborder">
<tr>
<td colspan="1" class="widthcontrol" style="width: 80px;"></td>
<td colspan="1" class="widthcontrol" style="width: 200px;"></td>
<td colspan="1" class="widthcontrol" style="width: 80px;"></td>
<td colspan="1" class="widthcontrol" style="width: 200px;"></td>
<td class="widthcontrol" style="width: 80px;"></td>
<td class="widthcontrol" style="width: 200px;"></td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程編號Label" runat="server" Text="課程編號"></asp:Label>
</td>
<td class="datadisplay" colspan="1">
<asp:Label ID="lb課程編號" runat="server" CssClass="inputFull"
Text='<%# Bind("課程編號") %>'></asp:Label>
</td>
<td class="caption">
<asp:Label ID="lb課程類別Label" runat="server" Text="課程類別"></asp:Label>
</td>
<td class="datadisplay" colspan="1">
<asp:Label ID="lb課程類別" runat="server" CssClass="inputFull"
Text='<%# Eval("課程類別") %>'></asp:Label>
<asp:Label ID="lb課程類別0" runat="server" CssClass="inputFull"
Text='<%# Get類別名稱("課程類別", Eval("課程類別")) %>'></asp:Label>
</td>
<td class="caption">
<asp:Label ID="lb課程類型Label" runat="server" Text="課程類型"></asp:Label>
</td>
<td class="datadisplay">
<asp:Label ID="lb課程類型" runat="server" CssClass="inputFull"
Text='<%# Get類別名稱("課程類型",Eval("課程類型")) %>'></asp:Label>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程名稱Label" runat="server" Text="課程名稱"></asp:Label>
</td>
<td class="datadisplay" colspan="5">
<asp:Label ID="lb課程名稱" runat="server" Text='<%# Bind("課程名稱") %>'
CssClass="inputFull"></asp:Label>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb訓練對象Label" runat="server" Text="訓練對象"></asp:Label>
</td>
<td class="datadisplay" colspan="1">
<asp:Label ID="lb訓練對象" runat="server" Text='<%# Bind("訓練對象") %>'
CssClass="inputFull"></asp:Label>
</td>
<td class="caption">
<asp:Label ID="lb課程時數Label" runat="server" Text="課程時數"></asp:Label>
</td>
<td class="datadisplay" colspan="1">
<asp:Label ID="lb課程時數" runat="server" Text='<%# Bind("課程時數") %>'
CssClass="inputFull"></asp:Label>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程內容Label" runat="server" Text="課程內容"></asp:Label>
</td>
<td class="datadisplay" colspan="5">
<asp:Label ID="lb課程內容" runat="server" Text='<%# Eval("課程內容", "{0}").Replace("\r", "<br/>") %>'
CssClass="inputFull"></asp:Label>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb備註Label" runat="server" Text="備註"></asp:Label>
</td>
<td class="datadisplay" colspan="5">
<asp:Label ID="lb備註" runat="server" Text='<%# Eval("備註", "{0}").Replace("\r", "<br/>") %>'
CssClass="inputFull"></asp:Label>
</td>
</tr>
</table>
</ItemTemplate>
<InsertItemTemplate>
<div>
<asp:LinkButton ID="btnSave" runat="server" Text="存檔" CommandName="Insert"
CssClass="button blue80" />
<asp:LinkButton ID="btnCancel" runat="server" Text="取消" CommandName="Cancel"
CausesValidation="false" CssClass="button red80" OnClientClick="return confirm(&quot;是否確定取消新增?&quot;);" />
</div>
<table border="0"
style="table-layout: fixed;">
<tr>
<td colspan="1" class="widthcontrol" style="width: 90px;"></td>
<td colspan="1" class="widthcontrol" style="width: 200px;"></td>
<td colspan="1" class="widthcontrol" style="width: 90px;"></td>
<td colspan="1" class="widthcontrol" style="width: 200px;"></td>
<td class="widthcontrol" style="width: 90px;">&nbsp;</td>
<td class="widthcontrol" style="width: 200px;">&nbsp;</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程編號Label" runat="server" Text="課程編號"></asp:Label>
</td>
<td class="datadisplay" colspan="1">
<asp:Label ID="Label9" runat="server" Text="(自動編號)"></asp:Label>
</td>
<td class="caption">
<span style="color: red;"></span><asp:Label ID="lb課程類別Label" runat="server"
Text="課程類別"></asp:Label>
</td>
<td class="datainput" colspan="1">
<weblib:WDropDownList ID="ddl課程類別" runat="server" CssClass="inputFull"
DataSourceID="dsBCLS" DataTextField="Name" DataValueField="Value"
SelectedValue='<%# Bind("課程類別") %>'>
</weblib:WDropDownList>
<asp:RequiredFieldValidator ID="rfv課程類別" runat="server"
ControlToValidate="ddl課程類別" Display="Dynamic" ErrorMessage="請選擇"></asp:RequiredFieldValidator>
</td>
<td class="caption">
<span style="color: red;"></span><asp:Label ID="lb課程類型Label" runat="server" Text="課程類型"></asp:Label>
</td>
<td class="datainput">
<weblib:WDropDownList ID="dd課程類型" runat="server" CssClass="inputFull"
DataSourceID="dsBCLS0" DataTextField="Name" DataValueField="Value"
SelectedValue='<%# Bind("課程類型") %>'>
</weblib:WDropDownList>
<asp:RequiredFieldValidator ID="rfv課程類型" runat="server"
ControlToValidate="dd課程類型" Display="Dynamic" ErrorMessage="請輸入"></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td class="caption">
<span style="color: red;"></span><asp:Label ID="lb課程名稱Label"
runat="server" Text="課程名稱"></asp:Label>
</td>
<td class="datainput" colspan="5">
<asp:TextBox ID="txt課程名稱" runat="server" Text='<%# Bind("課程名稱") %>'
MaxLength="100" CssClass="inputFull"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfv課程名稱" runat="server" ControlToValidate="txt課程名稱"
Display="Dynamic" ErrorMessage="請輸入"></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb訓練對象Label" runat="server" Text="訓練對象"></asp:Label>
</td>
<td class="datainput" colspan="1">
<asp:TextBox ID="txt訓練對象" runat="server" Text='<%# Bind("訓練對象") %>'
MaxLength="50" CssClass="inputFull"></asp:TextBox>
</td>
<td class="caption">
<asp:Label ID="lb課程時數Label" runat="server" Text="課程時數"></asp:Label>
</td>
<td class="datainput" colspan="1">
<asp:TextBox ID="txt課程時數" runat="server" Text='<%# Bind("課程時數") %>'
MaxLength="20" CssClass="inputFull"></asp:TextBox>
<asp:RangeValidator ID="rv課程時數" runat="server"
ControlToValidate="txt課程時數" Display="Dynamic"
ErrorMessage="請輸入 1 至 100 的數字" MaximumValue="100"
MinimumValue="1" Type="Integer"></asp:RangeValidator>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程內容Label" runat="server" Text="課程內容"></asp:Label>
</td>
<td class="datainput" colspan="5">
<asp:TextBox ID="txt課程內容" runat="server" Text='<%# Bind("課程內容") %>'
MaxLength="2000" TextMode="MultiLine" Rows="5" CssClass="inputFull"></asp:TextBox>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb備註Label" runat="server" Text="備註"></asp:Label>
</td>
<td class="datainput" colspan="5">
<asp:TextBox ID="txt備註" runat="server" Text='<%# Bind("備註") %>'
MaxLength="1000" TextMode="MultiLine" Rows="5" CssClass="inputFull"></asp:TextBox>
</td>
</tr>
</table>
</InsertItemTemplate>
<EditItemTemplate>
<div>
<asp:LinkButton ID="btnSave" runat="server" Text="存檔" CommandName="Update"
CssClass="button blue80" />
<asp:LinkButton ID="btnCancel" runat="server" Text="取消" CommandName="Cancel"
CausesValidation="false" CssClass="button red80" OnClientClick="return confirm(&quot;是否確定取消更正?&quot;);" />
</div>
<table border="0" class="fixedwithoutborder">
<tr>
<td colspan="1" class="widthcontrol" style="width: 90px;"></td>
<td colspan="1" class="widthcontrol" style="width: 200px;"></td>
<td colspan="1" class="widthcontrol" style="width: 90px;"></td>
<td colspan="1" class="widthcontrol" style="width: 200px;"></td>
<td class="widthcontrol" style="width: 90px;">&nbsp;</td>
<td class="widthcontrol" style="width: 200px;">&nbsp;</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程編號Label" runat="server" Text="課程編號"></asp:Label>
</td>
<td class="datadisplay" colspan="1">
<asp:Label ID="lb課程編號" runat="server" CssClass="inputFull"
Text='<%# Bind("課程編號") %>'></asp:Label>
</td>
<td class="caption">
<asp:Label ID="lb課程類別Label" runat="server" Text="課程類別"></asp:Label>
</td>
<td class="datadisplay" colspan="1">
<asp:Label ID="lb課程類別" runat="server" CssClass="inputFull"
Text='<%# Get類別名稱("課程類別", Eval("課程類別")) %>'></asp:Label>
</td>
<td class="caption">
<span style="color: red;"></span><asp:Label ID="lb課程類型Label" runat="server" Text="課程類型"></asp:Label>
</td>
<td class="datainput">
<weblib:WDropDownList ID="dd課程類型" runat="server" CssClass="inputFull"
DataSourceID="dsBCLS0" DataTextField="Name" DataValueField="Value"
SelectedValue='<%# Bind("課程類型") %>'>
</weblib:WDropDownList>
<asp:RequiredFieldValidator ID="rfv課程類型" runat="server"
ControlToValidate="dd課程類型" Display="Dynamic" ErrorMessage="請輸入"></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td class="caption">
<span style="color: red;"></span><asp:Label ID="lb課程名稱Label"
runat="server" Text="課程名稱"></asp:Label>
</td>
<td class="datainput" colspan="5">
<asp:TextBox ID="txt課程名稱" runat="server" Text='<%# Bind("課程名稱") %>'
MaxLength="100" CssClass="inputFull"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfv課程名稱" runat="server" ControlToValidate="txt課程名稱"
Display="Dynamic" ErrorMessage="請輸入"></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb訓練對象Label" runat="server" Text="訓練對象"></asp:Label>
</td>
<td class="datainput" colspan="1">
<asp:TextBox ID="txt訓練對象" runat="server" Text='<%# Bind("訓練對象") %>'
MaxLength="50" CssClass="inputFull"></asp:TextBox>
</td>
<td class="caption">
<asp:Label ID="lb課程時數Label" runat="server" Text="課程時數"></asp:Label>
</td>
<td class="datainput" colspan="1">
<asp:TextBox ID="txt課程時數" runat="server" Text='<%# Bind("課程時數") %>'
MaxLength="20" CssClass="inputFull"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfv課程時數" runat="server" ControlToValidate="txt課程時數"
Display="Dynamic" ErrorMessage="請輸入"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="rev課程時數" runat="server" ControlToValidate="txt課程時數"
ValidationExpression="\d{1,20}" Display="Dynamic" ErrorMessage="請輸入數字"></asp:RegularExpressionValidator>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程內容Label" runat="server" Text="課程內容"></asp:Label>
</td>
<td class="datainput" colspan="5">
<asp:TextBox ID="txt課程內容" runat="server" Text='<%# Bind("課程內容") %>'
MaxLength="2000" TextMode="MultiLine" Rows="5" CssClass="inputFull"></asp:TextBox>
</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb備註Label" runat="server" Text="備註"></asp:Label>
</td>
<td class="datainput" colspan="5">
<asp:TextBox ID="txt備註" runat="server" Text='<%# Bind("備註") %>'
MaxLength="1000" TextMode="MultiLine" Rows="5" CssClass="inputFull"></asp:TextBox>
</td>
</tr>
</table>
</EditItemTemplate>
<EmptyDataTemplate>
<div>
<asp:LinkButton ID="btnInsert" runat="server" Text="新增" CommandName="New"
CssClass="button blue80" />
</div>
<table border="0" style="table-layout: fixed;">
<tr>
<td colspan="1" class="widthcontrol" style="width: 80px;"></td>
<td colspan="1" class="widthcontrol" style="width: 200px;"></td>
<td colspan="1" class="widthcontrol" style="width: 80px;"></td>
<td colspan="1" class="widthcontrol" style="width: 200px;"></td>
<td class="widthcontrol" style="width: 80px;">&nbsp;</td>
<td class="widthcontrol" style="width: 200px;">&nbsp;</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程類別Label" runat="server" Text="課程類別"></asp:Label>
</td>
<td class="datadisplay" colspan="1"></td>
<td class="caption">
<asp:Label ID="lb課程編號Label" runat="server" Text="課程編號"></asp:Label>
</td>
<td class="datadisplay" colspan="1"></td>
<td class="caption">
<asp:Label ID="lb課程類型Label" runat="server" Text="課程類型"></asp:Label>
</td>
<td class="datadisplay">&nbsp;</td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程名稱Label" runat="server" Text="課程名稱"></asp:Label>
</td>
<td class="datadisplay" colspan="5"></td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb訓練對象Label" runat="server" Text="訓練對象"></asp:Label>
</td>
<td class="datadisplay" colspan="1"></td>
<td class="caption">
<asp:Label ID="lb課程時數Label" runat="server" Text="課程時數"></asp:Label>
</td>
<td class="datadisplay" colspan="1"></td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb課程內容Label" runat="server" Text="課程內容"></asp:Label>
</td>
<td class="datadisplay" colspan="5"></td>
</tr>
<tr>
<td class="caption">
<asp:Label ID="lb備註Label" runat="server" Text="備註"></asp:Label>
</td>
<td class="datadisplay" colspan="5"></td>
</tr>
</table>
</EmptyDataTemplate>
</asp:FormView>
<asp:GridView ID="GridView1" runat="server"
AllowPaging="True" AutoGenerateColumns="False"
DataKeyNames="課程編號" DataSourceID="dsGrid"
EnableModelValidation="True" Width="100%">
<Columns>
<asp:TemplateField HeaderText="課程編號" SortExpression="課程編號">
<ItemTemplate>
<asp:Label ID="Label1" runat="server"
Text='<%# Bind("課程編號") %>'></asp:Label>
<asp:LinkButton ID="LinkButton1" runat="server"
CausesValidation="False" CommandName="Select"></asp:LinkButton>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>
<asp:TemplateField HeaderText="課程類別" SortExpression="課程類別">
<ItemTemplate>
<asp:Label ID="lb課程類別" runat="server" CssClass="inputFull"
Text='<%# Get類別名稱("課程類別", Eval("課程類別")) %>'></asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>
<asp:TemplateField HeaderText="課程類型" SortExpression="課程類型">
<ItemTemplate>
<asp:Label ID="lb課程類型" runat="server" CssClass="inputFull"
Text='<%# Get類別名稱("課程類型",Eval("課程類型")) %>'></asp:Label>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
</asp:TemplateField>
<asp:BoundField DataField="課程名稱" HeaderText="課程名稱"
SortExpression="課程名稱" />
<asp:BoundField DataField="訓練對象" HeaderText="訓練對象"
SortExpression="訓練對象" />
<asp:BoundField DataField="課程時數" HeaderText="課程時數"
SortExpression="課程時數" />
</Columns>
<PagerTemplate>
<weblib:GridViewPager ID="GridViewPager1" runat="server" />
</PagerTemplate>
</asp:GridView>
</asp:View>
</asp:MultiView>
</div>
</asp:Content>