
質問させて下さい。
Classic ASP でASP.NETのマスターページのような共通テンプレートを利用する時には、
(1)ヘッダフッタにわけて#includeを使う
<!-- #include file="../include/header.asp" -->
<% Response.Write "コンテンツ部分" %>
<!-- #include file="../include/footer.asp" -->
(2)テンプレートを用意しておきContentsの部分をReplaceする
○temlate.html
<html>
<head><title>タイトル</title></head>
<body>
{{Contents}}
</body>
<html>
○sample.asp
'テンプレ読み込み
Set fs = Server.CreateObject("Scripting.FileSystemObject")
Set ts = fs.OpenTextFile("template.html", 1, False)
Do Until ts.AtEndOfStream
strTemplate = objFile.ReadAll
Loop
'コンテンツ部作成
strContents = "コンテンツ部分"
'HTML吐き出し
Response.Write Replace(strTemplate,"{{Contents}}",strContents)
(3)2のようにテンプレを用意するがReplaceはしない
○sample.asp
'テンプレ読み込み
Set fs = Server.CreateObject("Scripting.FileSystemObject")
Set ts = fs.OpenTextFile("template.html", 1, False)
Do Until ts.AtEndOfStream
strTemplate = objFile.ReadAll
Loop
'テンプレ分解
arrTemplate = Split(strTemplate,"{{Contents}}")
Response.Write arrTemplate(0) 'ヘッダ出力
Response.Write "コンテンツ部分"
Response.Write arrTemplate(1) 'フッタ出力
1は古い本などに載っているやり方で、今いじっているソースもそうなっているのですが、テンプレートのhtmlを編集するのが困難なのでやめたいと思っています。
2は{{}}の部分を変えていけばいろいろ応用が利いて便利そうですが、コンテンツ部分を変数に保持したりReplace関数を多用したりするのは負荷が大きくならないか心配です。
3は今書きながら思いついたので適切かどうかわかりません。(読み込みと分解の方法を適切にすれば良いような気もしますが…)
いったいどのようにするのが適切なのでしょうか。
ご教示のほどよろしくお願い致します。
No.1ベストアンサー
- 回答日時:
このテンプレートのやり方が一般的な考え方ですよ。
後はXML + XSSを使ってASPファイル(画面に出力する内容を動的に変更)できる形のテンプレートを用意して、HTML生成させてもいいですけどね。
>Replace関数を多用したりするのは負荷が大きくならないか心配
Replaceを使う部分を心配されているのであれば、
実際に、Stressテスト用ツールがマイクロソフトから無償で
入手できますので、それで実験してみて、負荷がどれぐらい
かかるのか見てみるといいかもしれません。
いずれにしても、ASPには、ASP.NETのマスターページのような
考え方がありませんので、この書籍に掲載されていたやり方が
一番ベターだと思います。
回答ありがとうございます。
結論としては(2)のReplace関数を利用するという方法がベターということでよろしいでしょうか。読み違えていたら申し訳ありません。
ちなみにご紹介のStressテスト用ツールというのは
http://www.microsoft.com/japan/msdn/columns/serv …
の記事にあるツールのことでしょうか。
初めて知りましたので、折を見て試してみたいと思います。
No.2
- 回答日時:
ご連絡が遅くなってしまいすいません。
>結論としては(2)のReplace関数を利用するという方法がベターということでよろしいでしょうか。読み違えていたら申し訳ありません。
はい、そうです。
>ちなみにご紹介のStressテスト用ツールというのは
>http://www.microsoft.com/japan/msdn/columns/serv …
>の記事にあるツールのことでしょうか。
はい、そうです。
「Replace関数を多用したりするのは負荷が大きくならないか心配です」とおっしゃっていたので、どれぐらい負荷が大きくなるのか、実際にStressテストで試してみた方が良いかなと思った次第です。
英語のツールになりますので、若干使い勝手が悪いかもしれませんが、負荷を与えた時のテストが容易にできるため、一度実験して頂けると幸いです。
お礼が遅くなりまして申し訳ありません。
ご紹介いただいたツールを試してからご報告しようと思っていたのですが、ちょっと時間が取れないのでひとまずお礼だけ申し上げます。
ありがとうございました。
また何かあった時にはご教示のほどよろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルに張り付けた写真のフ...
-
キヤノン アソビカメラ iNSPiC ...
-
VB.NET Excelを読み込んでDataT...
-
aspxをhtmlに変換する方法について
-
vba 空のデータをSplitする時の...
-
VBAでPDFを作成する際、同じ名...
-
phpのファイルがブラウザで開か...
-
【VB.NET】Excelの最終行までの...
-
バッチで当日日付で作成される...
-
高校1年生情報の問題について。
-
エクセルVBAで印刷する書式をク...
-
Windows10にデュアルブートでXP...
-
Windowsで複数のファイルを同じ...
-
vba マージエリアの行数を非表...
-
SJISで、全角文字Aの文字コード...
-
SPO2測定
-
エクセルのマクロについて教え...
-
インドe-Visa 承認書のApplicat...
-
SPIの非言語の割合と比が難しく...
-
SPIの対策は参考書でやるべきか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
wordpressの投稿ページの格納場所
-
スマホで特定のサイトを表示さ...
-
CSSのブラウザでの確認について
-
HTML&CSSとwordpressの違い
-
【Yomi Search】カテゴリ欄のカ...
-
はてなブログ 設定
-
LINEに知らない人から通知が入...
-
三つ折りのリーフレットを作りたい
-
Becky!ver.2で、返信・転送用テ...
-
Powerpointの表のスタイルで好...
-
Wordの「キーボードのユーザー...
-
改ざんは修正や訂正という意味...
-
ひな形とテンプレートの違い?
-
ワードプレスで公開しているペ...
-
FC2ブログでプロフィールが2つ...
-
あらかじめ用意したテンプレー...
-
【FC2ブログ】複数カテゴリを作...
-
FC2ブログでテンプレートを...
-
規格A4仕上がりの外三つ折り(Z...
-
ブログが公開できません
おすすめ情報