问题列表 - 第4835页

如何清除HttpWebRequest的缓存

我正在开发一个专有的库,我遇到了缓存的一些问题HttpWebRequest.该库使用与下面相同的代码来发出请求:

var request = WebRequest.Create("http://example.com/") as HttpWebRequest;

request.CachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.CacheIfAvailable);
Run Code Online (Sandbox Code Playgroud)

尽管每个响应都不同,但外部资源不会禁止缓存.因此,我每次都得到相同的回应.

有没有办法清除HttpWebRequest缓存的内容?正确的解决方案是修复外部源或者更改缓存策略,但两者都不可能 - 因此问题.

清除高速缓存可能具有各种影响,因此优选地,解决方案是基于每个资源使高速缓存无效.

.net caching httpwebrequest

27
推荐指数
2
解决办法
3万
查看次数

从文本文件中删除行的有效方法

我需要从文本文件中删除某一行.这样做最有效的方法是什么?文件可能很大(超过百万条记录).

更新:下面是我正在使用的代码,但我不确定它是否好.

internal void DeleteMarkedEntries() {
    string tempPath=Path.GetTempFileName();
    using (var reader = new StreamReader(logPath)) {
        using (var writer = new StreamWriter(File.OpenWrite(tempPath))) {
            int counter = 0;
            while (!reader.EndOfStream) {
                if (!_deletedLines.Contains(counter)) {
                    writer.WriteLine(reader.ReadLine());
                }
                ++counter;
            }
        }
    }
    if (File.Exists(tempPath)) {
        File.Delete(logPath);
        File.Move(tempPath, logPath);
    }
}
Run Code Online (Sandbox Code Playgroud)

c# performance file-io

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

如何将现有的asp.net应用程序迁移到asp.net MVC模式格式

我想将现有的ASP.NET应用程序迁移到ASP.NET MVC模式格式.我应该遵循什么程序?任何分步说明都会非常有用.

asp.net-mvc webforms migrate

38
推荐指数
2
解决办法
2万
查看次数

ASP.NET MVC +流畅的nNibernate,IoC工具是什么?

我正在开发一个ASP.NET MVC项目,我们决定使用Fluent nHibernate进行数据访问.为了实现松耦合,我们采用IoC/DI模式.我的问题是IoC工具的用途.我试图找到windsor,ninject,spring,structuremap和unity之间的差异,但是很难看出每个人都能提供的好处.你有什么经历?

asp.net-mvc dependency-injection inversion-of-control fluent-nhibernate

8
推荐指数
2
解决办法
2970
查看次数

C#:ObjectTrackingEnabled = false值得为小型操作吗?

鉴于以下代码:

using(var data = new SomeDataContext(ConnectionString))
{
  data.ObjectTrackingEnabled = false;

  foreach(Something in data.Somethings)
     someList.Add(something.SomeProperty);
}
Run Code Online (Sandbox Code Playgroud)

将对象跟踪设置为false是否值得?我知道这只是一行代码,但是我不得不一直写它.但是我听说你可以通过在不需要的时候转动它来获得一些性能提升.由于我只需要快速读出一些数据,我不需要跟踪.但是这么一小段代码值得吗?你有什么意见?我应该用吗?我不应该吗?为什么?

c# performance linq-to-sql

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

继承类之间的通信

我在不同的文件中有3个类:

   X
   |
-------
|     |
Y     Z
Run Code Online (Sandbox Code Playgroud)

我将创建几个继承类Y和Z的对象.

只有当某个标志变量由类Y设置时,才应执行Z类中的特定函数.

我应该在哪里创建这个标志变量(哪个类)和声明应该是什么样的(静态/外部)?

c++ inheritance communication class object

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

算法速度顺序

有时我完全被愚弄试图用O(x)表示法来估计算法的速度,我的意思是,当命令是O(n)或O(mxn)时我真的可以指出,但对于那些是O(lg( n))或O(C(权力n))我认为我在那里遗漏了一些东西......那么,对于一个简单的估计而言,你有什么提示和技巧可以快速忽略算法?

作为我正在寻找的一个例子,这里有一些容易的(可能是错的,但我尽力):

  • O(n):如果有一个简单的循环,从1到n(或其中几个,但不是嵌套的.
  • O(mxn):另一个嵌套循环,其中限制为m和n.

提前致谢.

algorithm performance big-o performance-estimation

6
推荐指数
2
解决办法
1468
查看次数

从后台线程捕获异常

并发同事.

我需要能够捕获可能从后台线程抛出的异常.

让代码说明一下(这是一个糟糕的代码)

 public delegate bool CheckForUpdatesHandler(Uri uri);
    public class UpdatesChecker {
        public event AsyncCompletedEventHandler CheckForUpdatesAsyncCompleted;
        protected virtual void OnCheckForUpdatesAsyncCompleted(AsyncCompletedEventArgs args) {
            if (CheckForUpdatesAsyncCompleted != null)
                CheckForUpdatesAsyncCompleted(this, args);
        }

        public bool CheckForUpdates(Uri ftp) {            
            Thread.Sleep(1000);
            throw new Exception("bla");
            return true;
        }     


        public void CheckForUpdatesAsync(Uri ftp){            
            var action = new CheckForUpdatesHandler(CheckForUpdates);
            var c=action.BeginInvoke(ftp, delegate(IAsyncResult state) {
                OnCheckForUpdatesAsyncCompleted(new AsyncCompletedEventArgs(null, false, null));
            }, null);
        }    
    }
Run Code Online (Sandbox Code Playgroud)

c# multithreading

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

从分隔数据库字符串字段中选择多选列表框中的项目

我正在尝试为数据库记录构建一个"编辑"页面,该页面可以编辑并保存回数据库.其中一个字段是多选列表框,需要在加载时突出显示硬编码列表中的相应列表项.

使用C#,如何根据数据库字段中逗号分隔的字符串填充多选列表框 - 选择适当的项目?我已经研究了一些涉及循环的解决方案,但我无法让他们使用我有限的C#技能组.

在我遇到困难之前,这就是我现在所拥有的一切.您会看到它没有考虑字符串中的多个值.是否有像"包含"这样的函数,我可以查看该值是否匹配?我仍然缺少一些(可能是基本的)C#逻辑和编码.

int i;
for (i = 0; i <= CATEGORYListBox.Items.Count - 1; i++)
{
    if (reader["CATEGORY"].ToString() == CATEGORYListBox.Items(i).Value)
    {
        CATEGORYListBox.Items(i).Selected = True;                   
    }
}
Run Code Online (Sandbox Code Playgroud)

...

<asp:ListBox ID="CATEGORYListBox" runat="server">
    <asp:ListItem Value="Circulation">Circulation</asp:ListItem>
    <asp:ListItem Value="Interactive Media">Interactive Media</asp:ListItem>
    <asp:ListItem Value="Classified">Classified</asp:ListItem>
    <asp:ListItem Value="Publishing">Publishing</asp:ListItem>
    <asp:ListItem Value="Editorial">Editorial</asp:ListItem>
    <asp:ListItem Value="Retail">Retail</asp:ListItem>
 </asp:ListBox>
Run Code Online (Sandbox Code Playgroud)

感谢大家.

c# database asp.net listbox multi-select

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

如何在内存/ CPU时间有限的Windows下运行程序?

它从这个问题开始,接着是这个问题,现在又引发了现在的问题.:)

任务如下:制作一个Windows程序,在有限的环境中运行另一个程序.另一个程序不可信任,因此它必须为hackish代码做好准备.进一步来说:

  • 将可用内存限制为某个X MB(作为参数给出);
  • 将可用执行时间限制为约X毫秒(作为参数给出).请注意,这是内核时间+用户时间,但不是空闲时间.另一方面,空闲时间也必须受到限制,因此程序不能Sleep()无限制.
  • 在程序终止时,尽可能精确地报告实际花费的CPU时间.毫秒是好的,几厘秒可以接受,少于那不会很好.CPU周期是理想的.
  • 如果程序崩溃,请报告有关崩溃的一些信息(越多越好,但不要过度使用堆栈跟踪等).
  • 最好捕获程序的所有输出并报告;
  • 该程序应该只使用当前目录,加上SYSTEM32的一些强制.DLL(如kernel.dll,user32.dll等).尽可能限制访问其他任何内容.不应该访问诸如注册表和网络之类的东西(除非强制性的.DLL需要它).访问越少越好.

这将是计算奥林匹克支持软件所必需的.该程序将在中央服务器上运行参与者提交的内容,因此您可以期待任何相关内容.崩溃将是常规的,并且也可以预期一些黑客攻击.

那么 - 你将如何制作这样的节目?你会用什么?在之前的主题(见上文)中,很明显附加作为调试器是一个坏主意,尽管我可能只是太笨拙了.

windows

5
推荐指数
2
解决办法
1495
查看次数