在ASP.NET站点上,有哪些技术可用于跟踪在任何给定时间点登录到站点的用户数量?
例如,我可以生成一个显示如下内容的报告:
10:00am 11:00am 12:00pm 1:00pm 2:00pm ....
3/25 25 32 45 40 37
3/26 31 38 50 57 40
3/27 28 37 46 35 20
etc.
Run Code Online (Sandbox Code Playgroud)
编辑:不,我们没有使用ASP.NET成员资格提供程序,它使用基于本地/ hacky会话的方法来确定用户是否处于"登录"状态.
如果我执行以下操作:
public class Test
{
public static void Main()
{
List<Person> persons = new List<Person> { new Person() };
persons[0].Sneezing += new EventHandler(Person_Sneezing);
persons = null;
}
public static void Person_Sneezing(object sender, EventArgs e)
{
(sender as Person).CoverFace();
}
}
Run Code Online (Sandbox Code Playgroud)
亲自[0]的人是否仍然存在于内存中,因为它的打喷嚏代理具有对Person_Sneezing方法的引用或者它是否被GC收集?
我正在使用asp.net捆绑/缩小并将所有内容放在bundle.config中,如下所示:
<styleBundle path="~/css/css">
<include path="~/css/bootstrap.css" />
<include path="~/css/flexslider.css" />
<include path="~/css/font-awesome.css" />
<include path="~/css/Site.css" />
<include path="~/css/orange.css" />
</styleBundle>
Run Code Online (Sandbox Code Playgroud)
但是我想从CDN使用bootstrap.css:
//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/css/bootstrap-combined.min.css
Run Code Online (Sandbox Code Playgroud)
那么我们怎么能在bundle.config中做到这一点呢?
我们都看到了网络上流行的灯箱效果(例如JQuery Lightbox和Shadowbox).昨天我与一位完全迷恋灯箱的客户进行了讨论,并希望每次提交表格时都使用它们,包括:
我想知道人们何时应该和不应该使用灯箱以及为什么.
我继承了一个旧的应用程序,它将zip文件存储在数据库中,需要检索此文件.在Firefox中工作正常,我可以打开zip并且里面的每个文件都很好.当我在IE7中运行它时,我收到以下错误.
Internet Explorer无法从localhost下载ProductContentFormImage.aspx.
Internet Explorer无法打开此Internet站点.请求的网站不可用或无法找到.请稍后再试.
我正在使用下面的代码.
byte[] content = (byte[])Session["contentBinary"];
Response.ClearContent();
Response.ClearHeaders();
Response.Clear();
Response.Buffer = true;
Response.Expires = 0;
Response.ContentType = "application/zip";
Response.AddHeader("Content-Length", content.Length.ToString());
Response.AddHeader("Content-Disposition", "attachment; filename=content.zip");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.BinaryWrite(content);
Response.End();
Run Code Online (Sandbox Code Playgroud) 这个问题与我的ASP.NET MVC 2开发有关,但它可以应用于任何MVC环境以及逻辑应该去哪里的问题.
因此,假设我有一个控制器,可以进行在线支付,例如购物车应用程序.我有接受客户信用卡信息的方法:
public class CartController : Controller
CartRepository cartRepository = new CartRepository()
[HttpPost]
public ActionResult Payment(PaymentViewModel rec)
{
if(!ModelState.IsValid)
{
return View(rec);
}
// process payment here
return RedirectToAction("Receipt");
}
Run Code Online (Sandbox Code Playgroud)
在评论中process payment here应该处理付款处理:
我正在尝试创建一个ActionFilter来替换HTML中的一些文本.基本上当服务器使用SSL时,我希望将对我的CDN(http://cdn.example.com)的引用替换为直接引用到我的服务器(https://www.example.com).所以结构是这样的(我假设OnResultExecuted是我应该开始的地方):
public class CdnSslAttribute : ActionFilterAttribute
{
public override void OnResultExecuted(ResultExecutedContext filterContext)
{
if(filterContext.HttpContext.Request.IsSecureConnection)
{
// when the connection is secure,
// somehow replace all instances of http://cdn.example.com
// with https://www.example.com
}
}
}
Run Code Online (Sandbox Code Playgroud)
这将用于我的安全控制器:
[CdnSsl]
public class SecureController : Controller
{
}
Run Code Online (Sandbox Code Playgroud)
我想这样做的原因是我的CDN不支持SSL.并且Master页面中有对CDN资源的引用.例:
<link href="http://cdn.example.com/Content/base.css" rel="stylesheet" type="text/css" />
Run Code Online (Sandbox Code Playgroud) 由于DateTime.AddDays()接受一个double参数,我担心当你添加一天时,可能会有一些舍入错误.例如,假设我有以下循环:
DateTime Now = DateTime.Today;
for (int i = 0; i < 365; ++i)
{
Now = Now.AddDays(1);
// do something
}
Run Code Online (Sandbox Code Playgroud)
我担心现在可能会从午夜开始漂流.我总是想做一些这样的事情,这可能会慢一些,但我的偏执有些缓解:
for (int i = 0; i < 365; ++i)
{
Now = Now.AddDays(1.01).Date;
// do something
}
Run Code Online (Sandbox Code Playgroud) 自动删除页面框架的最佳方法是什么?
我之前使用过这种类型的代码:
<script language="JavaScript">
setTimeout ("changePage()", 3000);
function changePage() {
if (self.parent.frames.length != 0)
self.parent.location="http://www.example.com";
}
</script>
Run Code Online (Sandbox Code Playgroud) 当用户访问页面时我想要做的是,网址中的锚点将确定顶部显示的内容.这应该在客户端完成,而不是在服务器端完成.
例如,假设我有HTML:
<div id='menuitems'>
<div id='appetizer'>HTML here</div>
<div id='maincourse'>HTML here</div>
<div id='dessert'>HTML here</div>
</div>
Run Code Online (Sandbox Code Playgroud)
所以我想要的是当用户访问此页面时:
mypage.html#dessert
我想使用像jquery这样的东西将甜点文本移到顶部,而不是通常的锚文本行为.所以用户看到的HTML是这样的:
<div id='menuitems'>
<div id='dessert'>HTML here</div>
<div id='appetizer'>HTML here</div>
<div id='maincourse'>HTML here</div>
</div>
Run Code Online (Sandbox Code Playgroud)
要么: mypage.html#maincourse
<div id='menuitems'>
<div id='maincourse'>HTML here</div>
<div id='appetizer'>HTML here</div>
<div id='dessert'>HTML here</div>
</div>
Run Code Online (Sandbox Code Playgroud)
如果没有锚或者它没有被识别,那么就不要做任何事情.
尝试执行以下操作:
order.ExpirationDate =(DateTime) ( ExpMonth + "/" + ExpYear);
Run Code Online (Sandbox Code Playgroud)
ExpMonth,Expyear都是整数.
c# ×4
asp.net ×3
html ×3
asp.net-mvc ×2
datetime ×2
javascript ×2
.net ×1
ajax ×1
architecture ×1
frame ×1
jquery ×1
lightbox ×1
memory-leaks ×1
rounding ×1
statistics ×1
usability ×1
web-traffic ×1
zip ×1