int id;
int[] idArray = "1,2,3,4,5".Split(',')
.Where(idStr => Int32.TryParse(idStr, out id))
.Select(Int32.Parse)
.ToArray();
這裡用到將 Int32.Parse 這個一般 method 指向給 delegate 的技巧。
// using System.Web;
var qs1 = HttpUtility.ParseQueryString("id=5&type=1");
qs1.ToString(); // "id=5&type=1"
var qs2 = HttpUtility.ParseQueryString(String.Empty);
qs2["id"] = "11";
qs2["name"] = "Tom";
qs2.ToString(); // "id=11&name=Tom"
[Serializable]
internal class HttpValueCollection : NameValueCollection
{
}
public static NameValueCollection ParseQueryString(string query, Encoding encoding)
{
if (query == null)
{
throw new ArgumentNullException("query");
}
if (encoding == null)
{
throw new ArgumentNullException("encoding");
}
if ((query.Length > 0) && (query[0] == '?'))
{
query = query.Substring(1);
}
return new HttpValueCollection(query, false, true, encoding);
}
<div style="border:1px solid #f00; float:left;">div 1</div> <div style="background:#0f0;">div 2</div>
<div style="border:1px solid #f00; float:left;">div1</div> <div style="background:#0f0; clear:left;">div2</div>
<div style="border:1px solid #f00; float:left;">div1</div> <div style="background:#0f0; clear:right;">div2</div>
| Selector | Meaning |
|---|---|
| AB | A and B |
| A, B | A or B |
| A B | foreach B whose parents contains A |
| A > B | foreach B whose parent is A |
| A + B | foreach B whose previous sibling is A |
| A ~ B | foreach B whose previous siblings contains A |
//using System.Drawing;
var image = Image.FromFile(@"D:\001.jpg");
int width = 120, height = 100;
float targetRatio = (float)width / (float)height;
float imageRatio = (float)image.Width / (float)image.Height;
if(imageRatio < targetRatio)
{
width = Math.Max(1, height * image.Width / image.Height);
}
else
{
height = Math.Max(1, width * image.Height / image.Width);
}
var thumbnail = image.GetThumbnailImage(width, height, null, IntPtr.Zero);
thumbnail.Save(@"D:\thumb.jpg");
Classes within the System.Drawing namespace are not supported for use within a Windows or ASP.NET service. Attempting to use these classes from within one of these application types may produce unexpected problems, such as diminished service performance and run-time exceptions. For a supported alternative, see Windows Imaging Components.
(function(model){
//...
})(model || model={});
function a(){
//...
}
var a = function(){
//...
};
a();
function(){
//...
}();
(function(){
//...
})();
var a = 1 || 2 || 3; // 1 var a = 0 || 2 || 3; // 2 var a = 0 || 0 || 3; // 3
.toolbar {
@color: #914;
@lighten: lighten(@color, 3%);
@darken: darken(@color, 3%);
background-color: @color;
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@lighten), to(@darken));
background-image: -webkit-linear-gradient(top, @lighten, @darken);
background-image: -moz-linear-gradient(top, @lighten, @darken);
background-image: -ms-linear-gradient(top, @lighten, @darken);
background-image: -o-linear-gradient(top, @lighten, @darken);
background-image: linear-gradient(to bottom, @lighten, @darken);
}
.bg-vertical-gradient(@color, @amount:3%) {
@lighten: lighten(@color, @amount);
@darken: darken(@color, @amount);
background-color: @color;
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(@lighten), to(@darken));
background-image: -webkit-linear-gradient(top, @lighten, @darken);
background-image: -moz-linear-gradient(top, @lighten, @darken);
background-image: -ms-linear-gradient(top, @lighten, @darken);
background-image: -o-linear-gradient(top, @lighten, @darken);
background-image: linear-gradient(to bottom, @lighten, @darken);
}
.toolbar {
.bg-vertical-gradient(#914);
}
.banner {
.bg-vertical-gradient(#702, 5%);
}