ASP.NET MVC ÈëÃÅ5¡¢ViewÓëViewData
±¾ÏµÁÐÎÄÕ»ùÓÚASP.NET MVC Preview5.
viewÔÚMVCģʽÖÐÓëÓû§½øÐÐ×îÖ±½ÓµÄ½Ó´¥£¬Ëü¸ºÔðÊý¾ÝµÄ³ÊÏÖ¡£ÕâÀïҪעÒâÒ»µã¾ÍÊÇ£¬viewÖ»ÊǸºÔðÊý¾ÝµÄ³ÊÏÖ£¬ËùÒÔÎÒÃÇÓ¦¸ÃÒª¾¡Á¿ÈÃ
viewÖв»Éæ¼°ÒµÎñÂß¼µÄ´¦Àí¡£
ÎÒÃÇÀ´Ìí¼ÓÒ»¸öBlogÊ×Ò³µÄview¡£ÔÚ°²×°ÁËASP.NET MVCºó£¬ÎÒÃÇÔÚÌí¼ÓÐÂÏîÄ¿µÄʱºò¿ÉÒÔ¿´µ½ÓÐMVCµÄviewÄ£°å£º
×¢£ºÈç¹ûÄãµÄÊÇÖÐÎİæ
µÄVS£¬°²×°Íêºó¿ÉÄÜ»á³öÏÖÕÒ²»µ½Õâ¸öÄ£°åµÄÏÖÏó£¬Äã¿ÉÒԲο¼
ÔÚÖÐÎİæVS 08Öа²×°MVC
ÕâÆª
ÎÄÕÂÉèÖÃһϡ£
ÆäÖÐMVC View Content PageÊÇÓÐĸ°æÒ³µÄ¡£ÎÒÃÇÔÚViews/HomeĿ¼ÏÂÌí¼ÓÒ»¸öMVC View Content
Page£¬²¢Ñ¡ÔñÎÒÃÇViews/SharedĿ¼ÏµÄSite.Masterĸ°æÒ³£º
public
partial
class
Index : ViewPage
{
}
ASP.NET
MVCĬÈÏÊÇʹÓÃWebFormÀ´×÷ΪviewµÄ¡£ËùÒÔÎÒÃÇ¿´µ½Ð½¨µÄaspxÒ³Ãæ¼Ì³Ð×ÔViewPage£¬Èç¹ûʹÓÃaspxÒ³Ãæ×÷ΪASP.NET
MVCµÄÊÓͼÒýÇæ£¬ÔòËùÓеÄaspxÒ³Ãæ¶¼±ØÐë¼Ì³Ð×ÔViewPage¡£ÎÒÃÇÔÙ¿´Ò»ÏÂViewPage£º
ÎÒÃÇ¿´µ½ViewPage¼Ì³Ð×ÔASP.NET
WebFormµÄPageÒ³£¬»¹ÊµÏÖÁËIViewDataContainer½Ó¿Ú£¬Í¬Ê±»¹ÌṩÁËһЩHelperÀàµÄʵÀý¡£ÎÒÃÇ¿ÉÒÔʹÓÃViewData
À´´ÓControllerÖÐÍùviewÒ³ÃæÖд«µÝÊý¾Ý¡£ÏÂÃæÎÒÃÇÔÚHomeControllerÖеÄIndex
ActionÖÐÈ¡³öPostsÁÐ±í£¬È»ºóÔÚViewÖÐÏÔʾ¡£ÎÒÃÇÏÈÔÚControllerÖÐÈ¡³öÊý¾Ý£¬Ç°ÃæËµ¹ý£¬ÎªÁË·½±ã£¬ÎÒÃÇ»áÖ±½ÓʹÓÃ
BlogEngineµÄModel²ãÀ´×÷ΪÎÒÃÇÕâ¸ö4mvcBlogµÄModel¡£ËùÒÔÎÒÃǵĴúÂëÈçÏ£º
public
ActionResult Index(
int
?
id)
{
ViewData[
"
Title
"
]
=
BlogSettings.Instance.Name;
List
<
IPublishable
>
posts
=
BlogEngine.Core.Post.Posts
.ConvertAll(
new
Converter
<
Post,
IPublishable
>
(
delegate
(Post p) {
return
p
as
IPublishable; }));
int
pageIndex
=
(id
!=
null
&&
id.HasValue
&&
id.Value
>
0
)
?
id.Value :
1
;
int
pageSize
=
Math.Min(posts.Count, BlogSettings.Instance.PostsPerPage);
if
((pageIndex
-
1
)
*
pageSize
+
pageSize
>
posts
Ïà¹ØÎĵµ£º
ÔÚ´´½¨ÍøÕ¾ÖУ¬³£³£»áʹÓõ½Éí·ÝÑéÖ¤¡£asp.netÖÐÄÚÖÃÁ˼¸ÖÖÉí·ÝÑéÖ¤µÄ·½Ê½£¬ÈçWindows¡¢froms¡¢PassportµÈ¡£Õ⼸ÖÖÉí·ÝÑéÖ¤µÄ·½Ê½¸÷Óв»Í¬¡£
Ò»°ãÀ´Ëµ£¬ÍøÕ¾µÄÉí·ÝÑéÖ¤·½Ê½¶¼»á¾¹ýÒÔϼ¸¸ö²½Ö裺
1¡¢ÊäÈëÓû§ÃûºÍÃÜÂ룬µ¥»÷È·¶¨°´Å¥¡£
2¡¢ÔÚºǫ́ÅжÏÓû§ÃûºÍÃÜÂëÊÇ·ñÕýÈ·£¬Èç¹û´íÎó·µ»ØÌáʾ£»Èç¹ûÕýÈ·£¬½øÈë¿É·ÃÎʵÄÒ ......
private void WriteXML()
{
StringBuilder sb = new StringBuilder();
sb.Append("<?xml version=\"1.0\" encoding=\"UTF-8\" ?> ");
sb.Append(" <!-- ");
sb.Append("<content>");
sb.Append(& ......
Ò»¡¢ÈÏʶWeb.configÎļþ
Web.configÎļþÊÇÒ»¸öXMLÎı¾Îļþ£¬ËüÓÃÀ´´¢´æ ASP.NET Web Ó¦ÓóÌÐòµÄÅäÖÃÐÅÏ¢£¨Èç×î³£ÓõÄÉèÖÃASP.NET Web Ó¦ÓóÌÐòµÄÉí·ÝÑéÖ¤·½Ê½£©£¬Ëü¿ÉÒÔ³öÏÖÔÚÓ¦ÓóÌÐòµÄÿһ¸öĿ¼ÖС£µ±Äãͨ¹ýVB.NETн¨Ò»¸öWebÓ¦ÓóÌÐòºó£¬Ä¬ÈÏÇé¿öÏ»áÔÚ¸ùĿ¼×Ô¶¯´´½¨Ò»¸öĬÈϵÄ
Web.configÎļþ£¬°üÀ¨Ä¬ÈϵÄÅäÖÃÉèÖà ......
ÏÈ¿´¿´ASP.NETÒ³ÃæË¢ÐµÄʵÏÖ·½·¨£º
µÚÒ»£º
C# code
private void Button1_Click( object sender, System.EventArgs e )
{
Response.Redirect( Request.Url.ToString( ) );
}
µÚ¶þ£º
C# code
private void Button2_Click( object sender, System.EventArgs e )
{
Response.Write( " < script lang ......