在池袋吃螃蟹放题时候拍的,一共3种螃蟹.味道不错.用手机拍的而且屋内光线很暗,效果不是很好.
网站编译速度快,使用了增量编译模式,仅仅只有文件被修改后,这部分才会被增量编译进去。 生成的程序集 WebSite:生成随机的程序集名,需要通过插件WebDeployment才可以生成单一程序集 WebApplication:可以指定网站项目生成单一程序集,因为是独立的程序集,所以和其他项目一样可以指定应用程序集的名字、版本、输出位置等信息 可以将网站拆分成多个项目以方便管理 可以从项目中和源代码管理中排除一个文件 支持VSTS的Team Build方便每日构建 更强大的代码检查功能,并且检查策略受源代码控制 可以对编译前后进行自己规定的处理 对App_GlobalResources 的Resource强类支持(网上说的,还没有了解过) 直接升级使用VS2003构建的大型系统 WebSite编程模型的优点: 动态编译该页面,马上可以看到效果,不用编译整个站点(主要优势) 同上,可以使错误的部分和使用的部分不相干扰(可以要求只有编译通过才能签入) 可以每个页面生成一个程序集(不会采用这种方式) 可以把一个目录当做一个Web应用来处理,直接复制文件就可以发布,不需要项目文件(无所谓,只适合小站点) 可以把页面也编译到程序集中(应该用不到,而且WebApplication也可以通过WebDeployment插件来实现) 两种编程模型的互相转换: VS2005 SP1内置了转换程序,可以非常方便的从WebSite转换到WebApplication 只需要复制文件,右键执行“转换为Web应用程序”即可。未查到有专门的反向转换工具,但比较后发现如果转换也非常简单。 删除所有*.designer.cs 将*.aspx、*.ascx、*.master页面文件中的 Codebehind="FileList.aspx.cs" 批量替换成 CodeFile="FileList.aspx.cs"
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="default.aspx.cs" Inherits="_Default" %> <%@ Page Language="C#" AutoEventWireup="true" Src="default.aspx.cs" Inherits="_Default" %> <%@ Page Language="C#" AutoEventWireup="true" Codebehind="default.aspx.cs" Inherits="_Default" %> 以上三句,具体差别在哪? --------------------------------------------------------------- src表示该aspx的源文件 codefile表示将运行时编译,比如VS2005中新建一个网站你会发现编译比WEB应用程序慢很多,但是可以修改代码后不用整体编译刷新页面就可以看到效果 codebehind就象.netfw1.1一样编译完后所有cs中的代码打包进dll --------------------------------------------------------------- CodeBehind: 指定包含与页关联的类的已编译文件的名称。该属性不能在运行时使用。 提供此属性是为了与以前版本的 ASP.NET 的兼容,以实现代码隐藏功能。在 ASP.NET 2.0 版中,应改用 CodeFile 属性指定该源文件的名称,同时使用 Inherits 属性指定该类的完全限定名称。 CodeFile 指定指向页引用的代码隐藏文件的路径。此属性与 Inherits 属性一起使用可以将代码隐藏源文件与网页相关联。此属性仅对编译的页有效。 --------------------------------------------------------------- src 好象是 ASP.NET 1.x 才会有,2.0 的 code-behind 变成 CodeFile 了 . Code-Behind 的好处就是它可以被编译,会比直接写在网页上的直译程序快,而且可以防止程序代码外泄的问题 移动项目开发笔记(用户控件引起对asp.net 2.0编译的思考) 来源:http://www.ittang.com/2008/0627/7216.html 一、起因: 开发团队的一名开发人员突然离职,他把他负责的模块任务交给了我。其中一个模块是他写了一个用户控件,我在我的页面尚始终都用不起,运行时发生错误,错误消息是:The base class includes the field *****, but its type (****) is not compatible with the type of control (ASP.webusercontrol_ascx). 二、经过: 遇到这个问题后个人感觉那个用户控件在页面上注册没有成功。查找了页面注册代码: <%@ Register Src="ProjectInfo.ascx" TagName="ProjectInfo" TagPrefix="uc3" %><uc3:ProjectInfo ID="ProjectInfo1" runat="server"&n
如果你要在你的C#程序中控制Windows的任务栏,有两个Windows api 可以帮到你!他们就是 FindWindowA 和 ShowWindowC#中声明如下:using System.Runtime.InteropServices;[DllImport("user32.dll", EntryPoint = "FindWindowA")]public static extern IntPtr FindWindowA(string lp1, string lp2);[DllImport("user32.dll", EntryPoint = "ShowWindow")]public static extern IntPtr ShowWindow(IntPtr hWnd, int _value);其实Windows的任务栏就是一个特殊的窗口,所以操作窗口的方法,对任务栏一样适合!控制代码如下://获取任务栏IntPtr hTray = Form1.FindWindowA("Shell_TrayWnd", String.Empty);//显示任务栏Form1.ShowWindow(hTray, 5);//隐藏任务栏Form1.ShowWindow(hTray, 0); 原文:http://www.pinvoke.net/default.aspx/user32/DrawAnimatedRects.html C# Signature: [DllImport("user32.dll")]static extern bool DrawAnimatedRects(IntPtr hwnd, int idAni, [In] ref RECT lprcFrom, [In] ref RECT lprcTo); User-Defined Types: IDANI_ Notes: Only the IDANI_CAPTION constant will result in any animation. Any other constants have not been implemented on any Windows platform! Tips & Tricks: Since only IDANI_CAPTION is implemented, to get the effect of IDANI_OPEN, simply swap the lprcFrom and lprcTo rectangles, but still specify the IDANI_CAPTION constant. Sample Code: /// <summary> /// This constant is not implemented on any Windows platform! /// </summary> public const System.Int32 IDANI_OPEN = 1; /// <summary> /// The window caption will animate from lprcFrom to lprcTo. /// </summary> public const System.Int32 IDANI_CAPTION = 3; [System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential)] struct RECT { public RECT(System.Drawing.Rectangle rectangle) { Left = rectangle.Left; Top = rectangle.Top; Right = rectangle.Right; Bottom = rectangle.Bottom; } public RECT(System.Drawing.Point location, System.Drawing.Size size) { Left = location.X; Top = location.Y; Right = location.X + size.Width; Bottom = location.Y + size.Height; } public System.Int32 Left; public System.Int32 Top; public System.Int32 Right; public System.Int32 Bottom; } [System.Runtime.InteropServices.DllImport("user32.dll")] static extern bool DrawAnimatedRects(System.IntPtr hwnd, int idAni, [System.Runtime.InteropServices.In] ref RECT lprcFrom, [Sy
昨天晚上,看到 瓶水相逢.NET 跟 Network Programming in .NET with C# & Visual Basic .NET(VB.NET) 上的技術文章, 於是就找個主題來實作一下, 到了今天早上還到 宅之力 來參考一些技術文章, 想說用用 P/Invoke 的功能, 來呼叫 Win32 API 的一些功能, 後就就找了 ShowWindow(...)、FindWindow(...)、SendMessage(...) 等, 來好好做個使用範例, 本文比較著墨在 ShowWindow(...) 上的用法, 所以在其參數上的說明會比較多~~~ 這個用法主要是在於用本程式去「控制其他程式視窗行為表現」方面, 例如:視窗的放大、縮小、隱藏...等。 最後,我提供一個自己製作的範例使用檔 ( 含原始碼 ) 給大家參考。 而本程式是先暫時以控制 Notepad ( 記事本 ) 為範例~ 再請大家多多參考囉~~~ ※ 本程式能完成,感謝上述所提及的網站的技術文件的提供參考,本人亦有在原程式碼中註明。 ※ 同樣的,如果您有使用參考到本程式的地方,本人也是非常的歡迎您參考使用,但是請您載明出處及作者 ,謝謝。 範例程式下載網址: http://www.blueshop.com.tw/download/show.asp?pgmcde=PGM20090105152622ILG&extcde=PGMDEFNEW ======================== 以 下 為 範 例 程 式 介 面 ======================== ======================== 以 下 為 程 式 碼 內 容 ======================== view plaincopy to clipboardprint? //----------------------------------------- // 本範例程式目前有三大功能~ // 1. 控制 記事本 (notepad.exe) 的視窗變化 ==> ShowWindow(...) // 2. 找尋特定視窗 ==> FindWindow(...) // 3. 送出指令給特定視窗,如關閉視窗 ==> SendMessage(...) // // // *程式設計: NobelHsieh ( Nobel12, 軋延油 ) http://www.wretch.cc/blog/nobel12 // *本程式可提供教學上之無償使用,但相關使用請符合智慧財產之規定,請註明本人原作者及出處即可~ // //-----------------------------------------
我想在 .NET 框架中用 C# 编写一个程序,该程序要激活另一个窗口。在 Windows/MFC 中我可以调用 SetActiveWindow 函数来实现。在.NET 框架中我该怎么做呢? John McCormick 你可以调用 Form.Activate 来激活你自己的窗体,但惊奇的是,在 .NET Framework 中没有函数可以激活属于另外一个进程或程序的窗体。不要害怕,任何时候,只要.NET Framework无法满足你的需要,你通常都可以使用托管(interop)机制直接与Windows 交互。目前情况下,你需要的函数是 SetForegroundWindow。它带唯一的参数——你想激活的窗 口的句柄(HWND). using System.Runtime.InteropServices; public class MyClass { [DllImport("user32.dll")] public static extern void SetForegroundWindow(IntPtr hwnd); } 在你的代码中使用此托管申明,并且假设你已经拥有了你希望激活的窗口的句柄,你要做的是调用 SetForegroundWindow: IntPtr hwnd = // get HWND SetForegroundWindow(hwnd); 你怎样获得窗口句柄呢?根据你的程序的工作方式,有许多方法可以做到,但最通用的一种方法是调用 FindWindow,你可以用这个 API 函数由窗口的标题或类名获得窗口句柄,在此你又要在 C# 中用到托管: public class MyClass { [DllImport("user32.dll")] public static extern IntPtr FindWindow(String classname, String title); } classname 是 Window 注册的窗口类的名字,title 是窗口标题。这些参数只能有一个为 NULL,不能全为 NULL。
使用RegularExpressionValidator验证: 只能输入数字:“^[0-9]*$”只能输入n位的数字:“^d{n}$”只能输入至少n位数字:“^d{n,}$”只能输入m-n位的数字:“^d{m,n}$”只能输入零和非零开头的数字:“^(0|[1-9][0-9]*)$”只能输入有两位小数的正实数:“^[0-9]+(.[0-9]{2})?$”只能输入有1-3位小数的正实数:“^[0-9]+(.[0-9]{1,3})?$”只能输入非零的正整数:“^+?[1-9][0-9]*$”只能输入非零的负整数:“^-[1-9][0-9]*$”只能输入长度为3的字符:“^.{3}$”只能输入由26个英文字母组成的字符串:“^[A-Za-z]+$”只能输入由26个大写英文字母组成的字符串:“^[A-Z]+$”只能输入由26个小写英文字母组成的字符串:“^[a-z]+$”只能输入由数字和26个英文字母组成的字符串:“^[A-Za-z0-9]+$”只能输入由数字、26个英文字母或者下划线组成的字符串:“^w+$”验证用户密码:“^[a-zA-Z]w{5,17}$”正确格式为:以字母开头,长度在6-18之间, 只能包含字符、数字和下划线。验证是否含有^%&',;=?$"等字符:“[^%&',;=?$x22]+”只能输入汉字:“^[u4e00-u9fa5],{0,}$”验证Email地址:"^[^@]([a-zA-Z_0-9.])+@([a-zA-Z_0-9.])+[^@]$"验证InternetURL:“^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$” 验证电话号码:“^((d{3,4})|d{3,4}-)?d{7,8}$” asp.net里面自带的验证Email地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 只能输入数字与符号“-” ^[\d\-]+$ 只能输入数字、英文、下划线、中杠线 [\w\-]+ ps:在网上找到的,写在这里作个记号...
有一段时间,正则表达式学习很火热很潮流,当时在CSDN一天就能看到好几个正则表达式的帖子,那段时间借助论坛以及Wrox Press出版的《C#字符串和正则表达式参考手册》学习了一些基础的知识,同时也为我在CSDN大概赚了1000分,今天想起来,去找《C#字符串和正则表达式参考手册》时,已经不知所踪了。现在用到正则的时候也比较少,把以前的笔记等整理一下,以志不忘。(1)“@”符号符下两ows表研究室的火热,当晨在“@”虽然并非C#正则表达式的“成员”,但是它经常与C#正则表达式出双入对。“@”表示,跟在它后面的字符串是个“逐字字符串”,不是很好理解,举个例子,以下两个声明是等效的:string x="D:\\My Huang\\My Doc";string y = @"D:\My Huang\My Doc";事实上,如果按如下声明,C#将会报错,因为“\”在C#中用于实现转义,如“\n”换行:string x = "D:\My Huang\My Doc";(2)基本的语法字符。\d 0-9的数字\D \d的补集(以所以字符为全集,下同),即所有非数字的字符\w 单词字符,指大小写字母、0-9的数字、下划线\W \w的补集\s 空白字符,包括换行符\n、回车符\r、制表符\t、垂直制表符\v、换页符\f\S \s的补集. 除换行符\n外的任意字符[…] 匹配[]内所列出的所有字符[^…] 匹配非[]内所列出的字符下面提供一些简单的示例: Codestring i = "\n";string m = "3";Regex r = new Regex(@"\D");//
录入用户名经常都有这样子要求:首字符是字母,只允许录入字母、数字和下划线 我用了两种方法判断,第一种方法是直接使用字符串判断: private bool CheckUserName(string s) { string str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_0123456789"; if (str.Substring(0, 52).IndexOf(s[0]) == -1) { //首字符不是字母 return false; } else { foreach (char c in s) { if (str.IndexOf(c.ToString()) == -1) { return false; } } } return true; } 第二种方法是使用正则表达式判断: private bool CheckStr(string s) { System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(@"^[a-zA-Z][a-zA-Z0-9|_]{2,19}$"); if (reg.IsMatch(s)) { return true; } else { return false; } } 在asp.net里,使用正则表达式还可以用验证控件: <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ErrorMessage="*" ControlToValidate="TextBox1" ValidationExpression="^[a-zA-Z][a-zA-Z0-9|_]{2,19}$"></asp:RegularExpressionValidator> 下面解释一下我的正则表达式:^[a-zA-Z][a-zA-Z0-9|_]{2,19}$ ^:匹配字符串的开头,在多行检索中,匹配一行的开头 $:匹配字符串的结尾,在多行检索中,匹配一行的结尾 |:选择,匹配的是该符号左边的子表达式或者右边的子表达式 以上三行载自《JavaScript权威指南》第四版P180 - P181 {n, m}:匹配前一项至少n次,但是不能超过m次 {n, }:匹配前一项n次,或更多次 {n}:匹配前一项恰好n次 以上三行载自《JavaScript权威指南》第四版P177
全球绝美自然风光概览Monukiri and Monu Islands Fiji 斐济:Monukiri岛和Monu岛 鸟瞰图图片 Along the Snake River at Sunrise Below Mount Moran Grand Teton National Park Wyoming 怀俄明州:大台顿国家公园风景 Big Beach Maui Hawaii 夏威夷:毛伊岛海滩图片 Blackwater Falls Blackwater Falls State Park West Virginia 西弗吉尼亚:黑水瀑布公园风景图片 Bromeliads Bocaina National Park Atlantic Rainforest Brazil 巴西:波凯那国家公园热带雨林图片 Cerro Torre Los Glaciares National Park Patagonia Argentina 阿根廷:洛斯格拉希亚雷斯冰川国家公园图片 Cuyahoga Valley National Recreation Area at Sunrise Ohio 俄亥俄州:国家休憩区日出 Cow Parsnips Along the Del Norte Coast Redwood National Park California 美国加州:红杉树国家公园 Dog Slaughter Creek Cumberland Falls State Resort Park Kentucky 肯塔基州:坎博兰瀑布州立公园 Eroded Landscape Badlands National Park South Dakota 南达科他:恶地国家公园 Flooded River at Dusk Ijsselstreek Region Holland The Netherlands 荷兰:艾塞尔河夕阳 Fly Geyser Black Rock Desert Nevada 内华达州:黑岩沙漠间歇喷泉 Fraser Valley Sunrise Mount Baker British Columbia 加拿大BC省:贝克山日出 Green Point Gros Morne National Park Newfoundland Canada 加拿大纽芬兰岛:格罗莫讷国家公园 Hawaiian Palm Grove 夏威夷:棕榈林黄昏奇景 Headland Cove Point Lobos California 美国加州:Point Lobos海岸风景 Island Lake Bridger National Forest Wyoming 怀俄明:彩虹桥国家森林 King's Beach West Coast Barbados West Indies 西印度群岛:巴巴多斯国王海滩 Lake Louise and Tatoosh Range Mount Rainier National Park Washington 华盛顿:雷尼尔山国家公园 Lumahai Beach Kauai Hawaii 夏威夷可爱岛:鲁玛海海滩 Russell Falls Mount Field National Park Tasmania 塔斯马尼亚岛:费尔德山国家公园 罗素瀑布 Marigolds in Bloom in a Swamp Martin Dies Jr State Park Texas 美国:德州州立公园 Middle Falls Silver Creek Falls Oregon 俄勒冈州:银溪瀑布 Moor Lakes Yoho National Park B