我写了一个JavaScript函数如下:
function CalcTotalAmt()
{
----------
-----------
}
Run Code Online (Sandbox Code Playgroud)
我有一个DropDownList,
<asp:DropDownList ID="ddl" runat="server" AutoPostBack="true" OnSelectedIndexChanged="ddl_SelectedIndexChanged"></asp:DropDownList>
Run Code Online (Sandbox Code Playgroud)
我需要在DropDownList的SelectedIndexChanged事件中调用上面的JavaScript函数.我尝试过如下;
protected void ddl_SelectedIndexChanged(object sender, EventArgs e)
{
ddl.Attributes.Add("onchange", "return CalcTotalAmt();");
}
Run Code Online (Sandbox Code Playgroud)
但是JavaScript函数没有执行.如何调用DropDownList中的JavaScript函数更改事件?
我有一个名为"DTHead"的DataTable,它有以下记录,
MIVID Quantity Value
------ ---------- --------
1 10 3000
1 20 3500
1 15 2000
2 20 3000
2 50 7500
3 25 2000
Run Code Online (Sandbox Code Playgroud)
在这里,我需要将上面的DataTable分成三个基于MIVID的表,如下所示;
DTChild1:
MIVID Quantity Value
------- ---------- ---------
1 10 3000
1 20 3500
1 15 2000
Run Code Online (Sandbox Code Playgroud)
DTChild2:
MIVID Quantity Value
------- ---------- ---------
2 20 3000
2 50 7500
Run Code Online (Sandbox Code Playgroud)
DTChild3:
MIVID Quantity Value
------- ---------- ---------
3 25 2000
Run Code Online (Sandbox Code Playgroud)
假设,如果Header DataTable包含4种不同的MIVID方法,那么应该根据MIVID创建4个Child DataTable.这该怎么做?
我知道MS SQL Server中的存储过程.但我对MS SQL Server中的扩展存储过程没有一个明确的想法.它是什么?用一个简单的例子来解释它.谢谢.
我在Mytable中有一个名为StockDate的列,其DataType是DateTime.
所以我的表包含如下记录
SID StockDate
----- ------------
1 2011-10-02 09:44:41.170
2 2011-10-02 09:48:23.234
Run Code Online (Sandbox Code Playgroud)
在这里,我想仅将StockDate的日期更新为"2011-09-30".但时间应该是一样的.这该怎么做?我需要你的所有建议.
表单身份验证票证的另一个问题是过早到期.我需要使用滑动Expiration设置为true.我已阅读论坛并了解精度损失的问题,如果请求仅在到期时间的一半之后进行,则只会更新故障单.
问题:在我的webconfig中,我有以下内容:
<authentication mode="Forms">
<forms timeout="20" name="SqlAuthCookie" protection="All" slidingExpiration="true" />
</authentication>
<sessionState timeout="20" />
<authorization>
Run Code Online (Sandbox Code Playgroud)
只有在20分钟间隔内没有请求时,用户才必须注销并重定向到login.aspx.问题是用户正在发出请求,但仍然会被抛到登录页面.这不应该发生.我想做的是为每个请求手动重置SqlAuthCookie.
以下是我的代码.它在context.AcquireRequestState上调用.
void context_AcquireRequestState(object sender, EventArgs e)
{
HttpContext ctx = HttpContext.Current;
ResetAuthCookie(ctx);
}
private void ResetAuthCookie(HttpContext ctx)
{
HttpCookie authCookie = ctx.Request.Cookies[FormsAuthentication.FormsCookieName];
if (authCookie == null)
return;
FormsAuthenticationTicket ticketOld = FormsAuthentication.Decrypt(authCookie.Value);
if (ticketOld == null)
return;
if (ticketOld.Expired)
return;
FormsAuthenticationTicket ticketNew = null;
if (FormsAuthentication.SlidingExpiration)
ticketNew = FormsAuthentication.RenewTicketIfOld(ticketOld);
if (ticketNew != ticketOld)
StoreNewCookie(ticketNew, authCookie, ctx);
}
private void StoreNewCookie(FormsAuthenticationTicket ticketNew, HttpCookie authCookie, HttpContext ctx) …Run Code Online (Sandbox Code Playgroud) 我对以下事情有点困惑:
当我使用条件语句或在分配值,我用这些东西有点困惑.有时它会抛出错误,有时它会起作用.我想知道什么时候我想用上面的东西.它们是否特定于数据类型?我需要你宝贵的建议.
我有一个有4列的DataTable.我想将第3列的值更改为"0".下面是我的DataTable.
ID Name Value Type
---- ---- ----- -----
1 Sam 250 2
2 Rai 324 3
3 Tim 985 8
Run Code Online (Sandbox Code Playgroud)
我想要的结果如下:
ID Name Value Type
---- ---- ----- ------
1 Sam 0 2
2 Rai 0 3
3 Tim 0 8
Run Code Online (Sandbox Code Playgroud)
如何实现这一点而不循环?请给我任何建议.
我有一个GridView,在它的RowDataBound事件中,我正在分配ToolTip如下:
protected void gv_RowDataBound(object sender, GridViewRowEventArgs e)
{
try
{
if (gv.HeaderRow != null && e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.ToolTip = "Remarks: " + ((Label)e.Row.FindControl("lblRemarks")).Text;
}
}
catch (Exception ex)
{
BussinessLayer.RIBOException.Instance.HandleMe(this, ex);
}
}
Run Code Online (Sandbox Code Playgroud)
在这里,我想延长ToolTip的显示时间.这该怎么做?
我有一个CheckBoxList.如果我选择两个或多个值,那么CheckBoxList SelectedValues将作为参数逐个传递,我想为PDF格式的每个SelectedValue生成Crystal Report,并且我想将所有Crystal Report PDF格式合并为单个PDF格式.怎么做到这一点?到目前为止,我只生成了PDF格式的单个Crystal报表.在下面,我已经提供了有关如何以PDF格式生成Crystal报表的代码.
CrystalDecisions.CrystalReports.Engine.ReportDocument rpt =
new CrystalDecisions.CrystalReports.Engine.ReportDocument();
string conn = ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();
string[] str = conn.Split(';');
string server = str[0].Substring(str[0].IndexOf(" = ") + 3);
string database = str[1].Substring(str[1].IndexOf(" = ") + 3);
string userid = str[2].Substring(str[2].IndexOf(" = ") + 3);
string password = "Welc0me";//str[3].Substring(str[3].IndexOf(" = ") + 3);
rpt.Load(Server.MapPath(RepPath));
for (int i = 0; i < rpt.DataSourceConnections.Count; i++)
{
rpt.DataSourceConnections[i].SetConnection(server, database, userid, password);
}
// Here ReleaseID will be replaced by the CheckBoxList's SelectedValue
rpt.SetParameterValue(0, ReleaseID);
rpt.SetParameterValue(1, false); …Run Code Online (Sandbox Code Playgroud) 我想调用存储过程,它返回表值函数中的表.如何创建表值函数?
例如:"sp_GetTable"是存储过程.它返回一个表.在这里,我想写一个名为"fn_GetTable"的函数
我希望得到存储过程给出的相同结果.
这是我的存储过程:
ALTER PROC sp_GetTable
AS
BEGIN
------------ Creating TempTable(#MasterTable) ----------------------
CREATE TABLE #MasterTable
(ItemID INT, ItemName VARCHAR(100), Specifications VARCHAR(100), D1 VARCHAR(50), D2 VARCHAR(50), D3 VARCHAR(50),
D1_Code VARCHAR(50), D2_Code VARCHAR(50), D3_Code VARCHAR(50))
------------ Creating TempTable(#TempItems) ----------------------
CREATE TABLE #TempItems(ItemID INT, ItemName VARCHAR(100), Specifications VARCHAR(100), D1 VARCHAR(50), D2 VARCHAR(50), D3 VARCHAR(50),
D1_Code VARCHAR(50), D2_Code VARCHAR(50), D3_Code VARCHAR(50))
------------ Creating & Inserting TempTable(@Dim) ----------------------
DECLARE @Dim TABLE (DCodes VARCHAR(100))
INSERT INTO @Dim SELECT D1_Code FROM MAS_SizeType WHERE D1_Code <> '' …Run Code Online (Sandbox Code Playgroud) sql sql-server stored-procedures sql-server-2005 user-defined-functions
asp.net ×7
c# ×5
datatable ×2
sql ×2
sql-server ×2
datetime ×1
httpcookie ×1
javascript ×1
merge ×1
pdf ×1
time ×1
tooltip ×1
types ×1