小编Arb*_*bid的帖子

禁用MVC3或IIS 7.5中的x-frame-options

我想在我的网站中禁用x-frame-options,我希望没有其他网站可以使用iframe在他们的网页中显示我的网页.我的网站是在ASP.net MVC3中制作的,并在IIS 7.5中托管.

asp.net iis iframe web-config x-frame-options

7
推荐指数
1
解决办法
1万
查看次数

Gzip压缩不能正常使用ASP.net MVC5

我想用Gzip压缩我的Web应用程序,我正在使用以下类

压缩过滤器

public class CompressFilter : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        HttpRequestBase request = filterContext.HttpContext.Request;
        string acceptEncoding = request.Headers["Accept-Encoding"];
        if (string.IsNullOrEmpty(acceptEncoding)) return;
        acceptEncoding = acceptEncoding.ToUpperInvariant();
        HttpResponseBase response = filterContext.HttpContext.Response;
        if (acceptEncoding.Contains("GZIP"))
        {
            response.AppendHeader("Content-encoding", "gzip");
            response.Filter = new GZipStream(response.Filter, CompressionMode.Compress);
        }
        else if (acceptEncoding.Contains("DEFLATE"))
        {
            response.AppendHeader("Content-encoding", "deflate");
            response.Filter = new DeflateStream(response.Filter, CompressionMode.Compress);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

缓存过滤器

public class CacheFilterAttribute : ActionFilterAttribute
{
    public int Duration
    {
        get;
        set;
    }

    public CacheFilterAttribute()
    {
        Duration = 1;
    }

    public override …
Run Code Online (Sandbox Code Playgroud)

compression asp.net-mvc gzip gzipstream asp.net-mvc-5

7
推荐指数
1
解决办法
8636
查看次数

SignalR使用组进行分页

我是SignalR的新手,在学习过程中,我正在尝试制作股票代码.我有超过1000个股票列表,并希望显示实时更改的分页和更新,这就是我使用SignalR组的原因.问题是,当我打开第1页时,一切正常,直到我打开第2页,然后第1页停止获取信号,第2页开始获取信号.我在SignalR小组中错过了什么?请帮帮我,谢谢.

[HubName("stockTicker")]
public class StockTickerHub : Hub
{
    private StockTicker _stockTicker;

    public StockTickerHub()
        : this(StockTicker.Instance)
    {

    }

    public StockTickerHub(StockTicker stockTicker)
    {
        _stockTicker = stockTicker;
    }

    public void OpenMarket()
    {
        var page = this.Context.QueryString["page_no"];
        int pageno = Convert.ToInt32(page);
        _stockTicker.OpenMarket(pageno);
        tryAddGroup(page);
    }

    public Task tryAddGroup(string page)
    {
        return Groups.Add(Context.ConnectionId, page);
    }
}
Run Code Online (Sandbox Code Playgroud)

StockTicker.cs

public class StockTicker
{

    MainModel _model = new MainModel();
    private static Lazy<StockTicker> _instance = new Lazy<StockTicker>(() => new StockTicker(GlobalHost.ConnectionManager.GetHubContext<StockTickerHub>().Clients));
    private TimeSpan _updateInterval = TimeSpan.FromMilliseconds(3000);

    private Timer _timer;
    public …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc signalr signalr-hub signalr.client

6
推荐指数
1
解决办法
215
查看次数

从SQL Server表中获取随机行数

我试图用一个快速的方法从一个大表(超过100万行)中获取5个随机行数.

到目前为止,我已经使用这些SQL查询进行了测试:

方法1

Select top 5 customer_id, customer_name 
from Customer TABLESAMPLE(1000 rows) 
order by newid()
Run Code Online (Sandbox Code Playgroud)

这种方法估计I/O成本是0.0127546如此之快(索引扫描非聚集)

方法2

select top 5 customer_id, customer_name 
from Customer 
order by newid()
Run Code Online (Sandbox Code Playgroud)

此方法的排序估计I/O成本是117.21189和索引扫描非聚集估计的I/O成本2.8735,因此这会影响性能

方法3

select top 5 customer_id, customer_name 
from Customer 
order by rand(checksum(*))
Run Code Online (Sandbox Code Playgroud)

这种方法的排序估计I/O成本是117.212和索引扫描非聚集估计的I/O成本213.149,这个查询比所有都慢,因为估计的子树成本是213.228非常慢的.

更新:

方法4

select top 5 customer_id, customer_name, product_id
from Customer 
Join Product on product_id = product_id
where (customer_active = 'TRUE')
order by checksum(newid())
Run Code Online (Sandbox Code Playgroud)

这种方法更好,速度更快.所有基准测试都没问题.

如何将方法4转换为LINQ-to-SQL?谢谢

linq sql-server random entity-framework guid

5
推荐指数
1
解决办法
370
查看次数

Bootstrap 导航栏菜单徽标不起作用

请查看此Bootply或下面的Code Snippet,我使用 Bootstrap 3.1 是因为我想在我的网站上使用这个很棒的搜索框。但是我遇到了一个问题,导航栏徽标不起作用(它甚至没有悬停,因此无法点击)。

在此处输入图片说明

注意:品牌标志在移动版本中工作正常,只有桌面版本有问题。因此,如果您正在运行以下代码片段,请单击全屏查看问题。

我不是一个 css 人,所以你们能帮我解决这个问题吗?谢谢

$(function () {
        // Remove Search if user Resets Form or hits Escape!
		$('body, .navbar-collapse form[role="search"] button[type="reset"]').on('click keyup', function(event) {
			console.log(event.currentTarget);
			if (event.which == 27 && $('.navbar-collapse form[role="search"]').hasClass('active') ||
				$(event.currentTarget).attr('type') == 'reset') {
				closeSearch();
			}
		});

		function closeSearch() {
            var $form = $('.navbar-collapse form[role="search"].active')
    		$form.find('input').val('');
			$form.removeClass('active');
		}

		// Show Search if form is not active // event.preventDefault() is important, this prevents the form from submitting
		$(document).on('click', '.navbar-collapse …
Run Code Online (Sandbox Code Playgroud)

html css jquery twitter-bootstrap twitter-bootstrap-3

4
推荐指数
1
解决办法
1803
查看次数

Jquery-ui Autocomplete和Bootstrap 3固定导航栏

我正在尝试使用jquery ui和twitter bootstarp进行自动完成搜索.我在导航栏中添加了一个简单的搜索框,一切似乎都运行正常.请看下面的代码片段,或者你也可以在这个JSFiddle上看到相同的代码,只需输入'a',它就会自动在下拉列表中显示结果.

问题在于平板电脑和移动版本的bootstrap导航栏,例如默认情况下显示平板电脑版本的代码片段,因此bootstarp导航栏会调整其高度,但是当我在平板电脑或移动版本上搜索时,自动完成结果会保留在固定位置的导航栏后面.我试图用z-index和改变修复这个问题.ui-autocomplete {position:relative;},但没有什么对我有用.下面是这个问题的图像.

在此输入图像描述

请看下面的代码片段,谢谢

$(function () {
        // Remove Search if user Resets Form or hits Escape!
		$('body, .navbar-collapse form[role="search"] button[type="reset"]').on('click keyup', function(event) {
			console.log(event.currentTarget);
			if (event.which == 27 && $('.navbar-collapse form[role="search"]').hasClass('active') ||
				$(event.currentTarget).attr('type') == 'reset') {
				closeSearch();
			}
		});

		function closeSearch() {
            var $form = $('.navbar-collapse form[role="search"].active')
    		$form.find('input').val('');
			$form.removeClass('active');
		}

		// Show Search if form is not active // event.preventDefault() is important, this prevents the form from submitting
		$(document).on('click', '.navbar-collapse form[role="search"]:not(.active) …
Run Code Online (Sandbox Code Playgroud)

jquery-ui jquery-ui-autocomplete twitter-bootstrap twitter-bootstrap-3

3
推荐指数
1
解决办法
3287
查看次数

如果我应该在Razor View Engine MVC3中使用多少条件?

我在MVC3 Razor视图中使用了太多的IF条件 - 如果要比较两个或更多值,则差不多230条.问题是它在服务器上使用了太多的内存和处理器.这就是为什么服务器响应时间非常缓慢超过6秒的平均值.

我该怎么办?我应该减少使用If条件还是有其他选择?

(我也可以在这里发布我的代码)

使用代码更新:

控制器:

 public ActionResult Index(string query)
           {
            name1 = query.Substring(0, query.IndexOf("-vs-"));
            name2 = query.Substring(query.IndexOf("-vs-") + 1, query.Length - query.IndexOf("-vs-") - 1);
            name2 = name2.Replace("vs-", "");
var model = _comp.GetViewModel(name1 , name2 );
Run Code Online (Sandbox Code Playgroud)

}

模式:

 public CpusViewModel GetViewModel(int? id1, int? id2)
    {
        if (id1 == null) return null;
        if (id2 == null) return null;

        var cpu1 = _comp.Get(p => p.cpuId == id1);
        if (cpu1 == null) return null;

        var cpu2 = _comp.Get(p => p.cpuId == …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc if-statement razor asp.net-mvc-3

0
推荐指数
1
解决办法
1045
查看次数