예전에 기억나나요? 지정된 콘텐츠(RSS 출력 주소)를 호출하기 위해 페이지에 위젯을 작성하곤 했습니다. 가장 좋은 방법은 XSLT+XML을 통해 문자열을 출력하는 것입니다. 이전 접근 방식을 잠시 생각해 보겠습니다
.
Protected Overrides Sub OnLoad(ByVal e As System.EventArgs)
Dim CacheKey As String = Url & "-" & 정렬
Dim objCache As System.Web.Caching.Cache = HttpRuntime.Cache
objCache.Item(CacheKey)가 아무것도 아닌 경우
Dim xpDocument As XPathDocument = New XPathDocument(Url, XmlSpace.Preserve)
Dim XTran As XslTransform = 새 XslTransform
XTran.Load(Web.HttpRuntime.AppDomainAppPath & "TransForm.xsl") 'TransForm.xsl
Dim sw As StringWriter = 새 StringWriter
Dim xArgList As XsltArgumentList = 새 XsltArgumentList
xArgList.AddParam("정렬", "", 정렬)
xArgList.AddParam("strlength", "", strLength)
XTran.Transform(xpDocument, xArgList, sw)
objCache.Insert(CacheKey, sw, Nothing, DateTime.Now.AddMinutes(15), TimeSpan.Zero)
종료 조건
MyBase.Text = CType(objCache.Item(CacheKey), StringWriter).ToString
SubXSLT 변환 파일 종료
<?xml version="1.0" 인코딩="gb2312"?>
<xsl:스타일시트
버전="1.0"
xmlns:xsl=" http://www.w3.org/1999/XSL/Transform "
xmlns=" http://www.w3.org/TR/REC-html40 "
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:dc=" http://purl.org/dc/elements/1.1/ "
xmlns:slash=" http://purl.org/rss/1.0/modules/slash/ "
xmlns:sy=" http://purl.org/rss/1.0/modules/syndication/ "
xmlns:resuls="urn:StrLength">
<xsl:param name="Sort" select="'10'"></xsl:param>
<xsl:param name="strlength" select="'15'"></xsl:param>
<xsl:템플릿 일치="//rss">
<xsl:apply-templates select="채널" />
</xsl:template>
<msxsl:script 언어="VB" Implements-prefix="resuls">
<![CDATA[
함수 GetSubString(byval origStr As String, byval endIndex As Integer) As String
Dim 바이트 As Byte() = System.Text.Encoding.GetEncoding("gb2312").GetBytes(origStr)
endIndex >= bytes.Length이면
origStr 반환
종료 조건
Dim subBytes(endIndex)를 바이트로
Array.Copy(바이트, 0, 하위 바이트, 0, endIndex)
System.Text.Encoding.GetEncoding("gb2312").GetString(subBytes) + ""를 반환합니다.
End Function 'GetSubString
공개 함수 strDate(byval s as string)as string
CDate(s).Day.ToString & "Day"를 반환합니다.
함수 종료
]]>
</msxsl:script>
<xsl:template match="채널">
<테이블 너비="300" border="0" cellpacing="0" cellpadding="0">
<xsl:for-each select="항목">
<xsl:if test="position() <=$Sort">
<tr>
<td width="21"><img src=" http://rss.msnbc.msn.com/id/3032091/device/rss/rss.xml)
RSS 출력 형식에 따라 바인딩
좋아요. 이제 효과를 찾아볼 수 있습니다.
저녁에 저녁 먹으러 나갈 때. 밖에 나가서 여름이 다가오는 것을 느껴보세요. 오. 나는 여름의 이 느낌을 좋아한다. 기분 좋게 산책을 나가보세요. 그것은 또한 훌륭한 대접입니다. 마침내. 추천곡 : 여름의 맛.