我已经创建了一个ashx文件来动态生成图像缩略图.我想在第一次调用它们后将这些图像缓存在客户端.
网址:
〜/ image.ashx?DIR =用户W = 25 H = 25&力= YES&IMG = matt.jpg
代码背后:
public void ProcessRequest (HttpContext context) {
TimeSpan refresh = new TimeSpan(0, 15, 0);
context.Response.Cache.SetExpires(DateTime.Now.Add(refresh));
context.Response.Cache.SetMaxAge(refresh);
context.Response.Cache.SetCacheability(HttpCacheability.Server);
context.Response.CacheControl = HttpCacheability.Public.ToString();
context.Response.Cache.SetValidUntilExpires(true);
string dir = context.Request.QueryString["dir"];
string img = context.Request.QueryString["img"];
bool force = context.Request.QueryString["force"] == "yes";
double w = 0;
double h = 0;
...
context.Response.ContentType = "image/jpeg";
thumb.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
}
Run Code Online (Sandbox Code Playgroud)
使用Chrome中的开发工具我可以看到以下响应标头:
HTTP/1.1 200 OK
Server: ASP.NET Development Server/10.0.0.0
Date: Mon, 26 Sep 2011 19:17:31 GMT
X-AspNet-Version: 4.0.30319 …
Run Code Online (Sandbox Code Playgroud) 我允许我的应用程序的用户选择自定义颜色,并希望有一种方法来显示每种颜色的友好名称,而不是显示十六进制代码的文本表示形式。
如何找到最接近System.Drawing.Color
给定的十六进制代码?
我花了两天时间使用服务帐户搞乱各种Drive API教程.
我使用的最新教程是这一个:https://developers.google.com/drive/delegation
尝试上传文件时,我不断收到此错误消息:
ProtocolException was unhandled
Error occurred while sending a direct message or getting the response.
Run Code Online (Sandbox Code Playgroud)
我安装了Fiddler并确定何时POST /o/oauth2/token
返回:
{
"error:"invalid_grant"
}
Run Code Online (Sandbox Code Playgroud)
我已经三次+检查了我的申请范围.
我究竟做错了什么?
所有选择(下拉列表)都有选择器吗?
我在这里看不到它.
最干净的我想出的是:
$(":input").has("option")
Run Code Online (Sandbox Code Playgroud)
$(":text")
获取文本框和textareas,$(":button")
获取按钮,$(":radio")
获取单选按钮,$(":checkbox")
获取复选框...
在哪里$(":select")
?
我正在构建一个柱形图,System.Web.UI.DataVisualization.Charting
并希望显示一条虚线来表示平均值.StripeLine似乎正是我正在寻找的,除了它位于列的下方/后面(参见示例).
有没有办法调整a的"Z-Index" StripeLine
,使其显示在?的前面/上方Series
?
我没有看到这个属性,并改变我添加的顺序Series
,StripeLine
并没有什么区别.
我有一个这样的课:
public class foo
{
public foo(string a, string b) { ... }
}
Run Code Online (Sandbox Code Playgroud)
我想做这样的事情:
public class bar : foo
{
public bar()
{
base = base("apple", "banana");
}
}
Run Code Online (Sandbox Code Playgroud)
Visual Studio对我大吼:
'foo' does not contain a constructor that takes 0 arguments
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?
在C#中,当我想封装一个List时,我将它放在一个类中,并在其中抛出一些辅助方法.但是,我注意到的是,每当我想迭代项目列表时,我就会返回列表.简单.然而,这有什么不好的是我无法判断列表是否被某些方法出错了.
所以这就是我一直在做的事情:
class Animals
{
private List<Dog> _dogs;
public List<Dog> Dogs
{
get { return _dogs; }
}
}
Run Code Online (Sandbox Code Playgroud)
为了反驳这一点,我想到了:
class Animals
{
private List<Dog> _dogs;
public Dog GetDog(int dogid)
{
return _dogs[dogid];
}
public int Count
{
get { return _dogs.Count; }
}
}
Run Code Online (Sandbox Code Playgroud)
这个方法的真正问题在于,每次我想要列表中的项目时,都必须调用一个方法.这意味着如果我想迭代列表,我必须设置一个循环来Animals.Count
调用Animals.GetDog(i)
每次迭代的次数.
这会影响我的计划吗?有没有更合适的方法来完成同样的事情?
我已经看过封装列表的方法,但它们似乎非常错综复杂.我的主要目的是不将_dogs
列表暴露给课外的任何东西.