質問投稿でgooポイントが当たるキャンペーン実施中!!>>

ASP.netの初心者です。現在テストサイトを作成しています。
環境:WindowsServer2003
   IIS 6
.NET Framework ver 2.0.50727
VisualStudio2005 ProfessionalEdition

VisualStudioによりサイト「test2」を作成し、ローカルフォルダに配置しました。

(「サーバの役割管理」→「アプリケーションサーバ」→「Webサイト」の中の下層にある「既定のWebサイト」を右クリックし、「既定のWebサイトのプロパティ」で確認した「ローカルパス」のフォルダです。わかりにくくて済みません。)

ブラウザから"http://(自マシンのIPアドレス)/test2"にアクセスしてみましたが、
次のようなエラーが出てしまいました。

*******************************************
パーサー エラー
説明: この要求の処理に必要なリソースの解析中にエラーが発生しました。
以下の解析エラーの詳細を確認し、ソースファイルに変更を加えてください。

パーサー エラー
メッセージ: アセンブリ 'App_Web_a0xchvzd' を読み込めませんでした。
ページにアクセスする前にアセンブリがコンパイルされているかどうか確認してください。

ソース エラー:
行 1: <%@ page language="C#" autoeventwireup="true" inherits="_Default, App_Web_a0xchvzd" %> 

↑ここが赤くなって怒られているらしいです。
行 2:
行 3: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio …


ソース ファイル: /test2/Default.aspx 行: 1

バージョン情報: Microsoft .NET Framework バージョン:2.0.50727.832; ASP.NET バージョン:2.0.50727.832


********************************************

検索したところ次のサイトが見つかったので、
http://www.secondnote.net/secondnote/archives/20 …

IIS のASP.netのバージョンが原因かと思い、

以下のサイトを参考に、IISのASP.netのバージョンを変更してみました。

http://blog.enjoitech.jp/detail.php?aid=93


"C:\WINDOWS\Microsoft.NET\Framework"フォルダには、
"v1.0.3705",
"v1.1.4322",
"v2.0.50727",
"v3.0"
と、ASP.netのバージョンごとのプログラムファイルを示唆するフォルダがありましたので、

この4つのバージョンに上述のサイトを参考にしてIISのASP.netのバージョンを変更し

既定のWebサイトのASP.netのバージョンもそのつど変更、

IISとWebサイトを再起動しました。


ですが、解決されません。

配置したフォルダが間違っているのでしょうか。
又は何が原因だと考えられるのでしょうか。


拙い質問で済みません。

どなたかアドバイスを宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

ちなみに、ドライブ:\inetpub\wwwroot\web.config の中身は、


どうなってますか?
恐らく、ドライブ:\inetpub\wwwroot\web.config の定義が
1.1用とかになってたりしませんか?
2.0用だと、
http://blogs.wankuma.com/mymio/archive/2007/11/0 …
のようにする必要があります。

もし、上記でもダメな場合は、可能な範囲で構いませんので、
http://(自マシンのIPアドレス)/test2 の配下にある
Web.Config の内容と、エラーになっているDefault.aspxのソース
がどのようになっているか情報をUPして頂けると助かります。

(ファイル名は記載されてませんでしたが、見る限りDefault.aspx
ぽかったので)

よろしくお願いします。

参考URL:http://blogs.wankuma.com/mymio/archive/2007/11/0 …
    • good
    • 0
この回答へのお礼

ご回答有難うございます。

http://(​自マシンのIPアドレス)/test2配下のWeb.configファイルは以下のようでした。
http://blog.goo.ne.jp/gellyfish/e/847a412b6e0de7 …
又、Default.aspxのソースは以下のとおりでした。
http://blog.goo.ne.jp/gellyfish/e/4efc62663db786 …

kero_mioさんが教えて下さった
http://blogs.wankuma.com/mymio/archive/2007/11/0 …
に書かれていたヒントで、ASP.NETのバージョンとWeb.configファイルの内容を次のように書き換えました。
http://blog.goo.ne.jp/gellyfish/e/519f4efcce4e91 …
Web.configファイルは1.0用であるのにも関わらず、.NETFramework ASP.NETが2.0であったために起きたエラーでした。双方を2.0にあわせたところ、解決致しました。

(Web.configとASP.NETのバージョンを付き合わせた後、次の質問と全く同じエラーが発生しました。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.ph …
こちらのエラーは、Webアプリケーションの作成を行っていなかったために出現したエラーでした。


本当に勉強不足で申し訳ありません。

redfox63さん、kero_mioさん、本当に有難うございました。

拙いまとめながら、この回答は締め切らせて頂きます。

お礼日時:2008/01/08 12:05

Windows2003の場合セキュリティ強化のため初期設定でASP.NETなどが使用不可に設定されています



サーバーの管理などから『アプリケーションサーバー』の管理コンソールを起動して
左ペイン(ツリー表示部)で『Webサービス拡張』を選択
右ペインの『ASP.NETv2.0.50727』を選択 左側にある『許可』ボタンをクリックして状態を『許可』に変更してみてください
    • good
    • 0
この回答へのお礼

ご回答有難うございます。

早速「ASP.NETv2.0.50727」などの状態を「許可」にし、

再起動させて確認してみましたが、同じエラーが出てしまいました。

アプリケーションサーバの管理コンソールはこんな状態でした。

http://www26.tok2.com/home/bisharaten/another/im …

折角ご回答頂いたのにも関わらず済みません・・・。
何が原因なのでしょうか。。

お礼日時:2008/01/08 10:38

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QASP.NETでのメッセージ画面を出すには

はじめまして。
ASP.NET(C#)で、開発をしています。
例えば、内部である処理が終わった後に「完了!」みたいなメッセージ画面をポップアップさせたいと思っております。いろいろ調べてはいるんですが、方法がわかりません。JSを使わなければならないのかなとは思いますが、具体的な方法がわかりません。
よい方法がありましたら、教えていただけないでしょうか。よろしくお願いいたします。

Aベストアンサー

確認は取れていませんが、多分以下のHPの内容でいけると思いますが…。
参考に如何でしょうか。

・ASP.NETでメッセージボックス(OK・NO)の処理について
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=5952&forum=7&6

・Webアプリでメッセージボックスを使いたい
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=1644&forum=7&7

QIISの仮想ディレクトリ作成がわかりません。教えて下さい。

こんにちわ。

Web Developerにて作成したASP.NETアプリケーションをWEBサーバに配置して実行した所、以下のエラーが表示されました。

-----------------------------エラー内容始まり----------------

'/WEB' アプリケーションでサーバー エラーが発生しました。
--------------------------------------------------------------------------------

構成にエラーがあります。
説明: この要求を処理するために必要な構成ファイルの処理中にエラーが発生しました。以下のエラーの詳細を確認し、構成ファイルに変更を加えてください。

パーサー エラー メッセージ: アプリケーション レベルを超えて allowDefinition='MachineToApplication' として登録されているセクションを使うことはできません。このエラーは、仮想ディレクトリが IIS でアプリケーションとして構成されなかった場合に発生します。

ソース エラー:


行 53: を有効にします。
行 54: -->
行 55: <authentication mode="Windows"/>
行 56: <!--
行 57: <customErrors> セクションは、要求の実行中にハンドル


ソース ファイル: D:\web\test\sample\web.config 行: 55


--------------------------------------------------------------------------------
バージョン情報: Microsoft .NET Framework バージョン:2.0.50727.42; ASP.NET バージョン:2.0.50727.210

---------------------------------エラー内容 終わり-------------------------------
なので仮想ディレクトリを作り直してみましたが結果は同じです。

手順は以下の通りです。

1、スタートメニューより [インターネットインフォメーションサービス (IIS) マネージャ] を選択する

2、画面左側のツリーから「規定の Web サイト」を右クリックして、[新規作成] → [仮想ディレクトリ] を選択する

3、「仮想ディレクトリの作成ウィザード」でエイリアスを入力し、[次へ] をクリック。

4、仮想ディレクトリを指定する
  3で入力したエイリアスの仮想ディレクトリの場所を指定します。

5、アクセス権を設定する (ASPなどのスクリプトを実行するにチェック)

6、ウィザードを完了する。


環境はWindows2000サーバー IIS5.0です。
SDKは入っておりません。。。

お気づきの点がありましたらご教示下さいませ。
宜しくお願い致します。

こんにちわ。

Web Developerにて作成したASP.NETアプリケーションをWEBサーバに配置して実行した所、以下のエラーが表示されました。

-----------------------------エラー内容始まり----------------

'/WEB' アプリケーションでサーバー エラーが発生しました。
--------------------------------------------------------------------------------

構成にエラーがあります。
説明: この要求を処理するために必要な構成ファイルの処理中にエラーが発生しました。以下のエラーの詳細を確認し、構成...続きを読む

Aベストアンサー

とりあえず、Web.config修正したら、エラーが出るようになりましたね。

Webの仕組みを理解して頂きたいのですが、
MsgBoxを書いている箇所は「Webサーバー側」の処理になります。
「Webサーバー側」でMsgBoxは、使用できません。

また、Web Developer で、MsgBoxが通ったのは、
Webサーバーとクライアントが同じPCだからです。

Webサーバーとクライアントが別PCになった時、MsgBoxは
動きませんので、それでエラーになったんじゃないかと思います。

その代わり、クライアント側の処理で、JavaScriptを使って
alert(VBでいうMsgBoxとほぼ同じ)を使えば、
メッセージが出力されるようになります。

詳しくは、
http://moo-asp.net/wiki/NWiki.aspx?page=MsgBox
をご覧下さい。

参考URL:http://moo-asp.net/wiki/NWiki.aspx?page=MsgBox

Q日付型のフィールドに空白を入れる方法を教えてください

ASP(VBScript)でSQLサーバにINSET INTO文を使ってデータを格納しているのですが、日付の部分がNULLの時、「1900/1/1」が入ってしまいます。
そのまま、空白を入れる方法はどうやったらよろしいのでしょうか?

TABLE1の内容は
番号|内容|日付です。

INSERT INTO TABLE1 VALUES ( 1, 'あいう', '')

結果
1|あいう|1900/1/1

Aベストアンサー

あとは、プログラムの書き方次第ですね、、、


If hensu=Null Or hensu="" Then
dt = "NULL"
Else
dt = "'" & hensu & "'"
End IF

E_SQL = "INSERT INTO TABLE1 VALUES & _
"( 1,'あいう', " & dt& ")"
の様に書きます。

Qbatファイルからsql文実行

クライアントOS:WIN2000
Oracle:9i(サーバ(UNIX)上にあります)

現在、クライアントからbatを起動し、SQL文を投げ、結果を取得したいと思っております。
(SQL文は単純にTBLをカウントしているだけです)

・batの中身
sqlplus %UID%/%PASS%@%SID% @test.sql > output

結果は取得出来るのですが、余分な情報も結果に出力されてしまいます。結果のみを出力させるにはどうすればよろしいでしょうか?

・余分な情報
Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production
に接続されました。

Aベストアンサー

sqlplus に -S オプションを追加してみればどうでしょうか。

参考URL:http://biz.rivus.jp/sqlplus_overview.html

QASP.NETのサーバー移行に伴うエラーについて教えて下さい

こんばんわ。

localの開発環境で作ったASP.NETのアプリケーションを、サーバーに置いて実行するとエラーが出てしまいます。

色々、調べてhttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=12465&forum=7&1のサイトと同じ事を行ったのですがエラーは
解消できず困っています。

ご存知の方、ご教示下さいませ。
よろしくお願い致します。

Aベストアンサー

<customErrors mode="Off"/> の部分だけではなく、
web.config 全体を
<?xml version="1.0"?>
<configuration>
<appSettings/>
<connectionStrings ~DB接続とかあればDB接続情報~/>
<system.web>
<compilation debug="true" strict="false" explicit="true" />
<customErrors mode="Off"/>
</system.web>
</configuration>

に書き直してみてください。

もし、web.config の全書き換えができる状況にない場合は、
可能な範囲で構いませんのでweb.configの情報を頂けたら
助かります!

# 何度もすいません...

QonClickに複数の関数を挿入する方法

初心者なのですがアニメーションの関数anime1、anime2、anime3を作成し、onClickに下記のように設定しました。
クリックするとアニメーション2つの設定ではは動くのですが、3つ目を設定すると動かなくなります。
通常はこのような設定はしないものなのでしょうか?
教えてください。
よろしくお願いします。
<INPUT type="button" value="START" onClick="anime1(), anime2()">・・・OKです。
<INPUT type="button" value="START" onClick="anime1(), anime2(),anime3()">・・・動きません。

Aベストアンサー

セミコロンでつなぐのが常道ですが、3つ以上なら
別途function化したほうが、可読性が高くなると
思います。

Qweb.configとは?(初心者です)

Web開発をしております。友人がweb.configの話をするのですが、私はそれは、使っておりません。web.configとは、ASP.NETを使用するときにのみ、使う設定ファイルなのでしょうか?
また、ASP.NET開発にて、web.configを使用しないと代替するものってなんなのでしょうか?
どうか、教えてください。お願いします。

Aベストアンサー

"web.config" で検索すればいくらでも出てくると思うのですが・・・

http://www.google.com/search?num=50&hl=ja&q=web.config%E3%81%A8%E3%81%AF&lr=lang_ja

http://www.google.com/search?num=50&hl=ja&q=%22web.config%E3%81%A8%E3%81%AF%22&lr=lang_ja

これらの数件を読むだけで解決すると思いますよ。
特に「今は使っていない」に対する解決は
http://www.atmarkit.co.jp/fdotnet/aspnet/aspnet18/aspnet18_01.html
の Page1~Page3 あたりで済むかもしれませんね。

QDataTableに入っているデータを全てinsertしたい!(C#)

はじめまして、okwebsamaです。
さっそく質問なのですが、
質問タイトルのままですが、DataTableに入っているデータを全てinsertしたいのです。
insert先のテーブルは、DataTableと同じ列名をもっています。

コード
DataTable d;
for(int i = 1; i <= d.Rows.Count; i++){
みたいな感じで作っていたんですが、ここから先が思いつきませんでした。
どなたかよろしくお願いします!!

Aベストアンサー

確認ですが、

・使っているデータベースは何ですか?
 (SQL Server or Oracle or Access or その他?)

・DBの接続方法には、何を使ってますか?
 (SqlClient? OleDb?)

・コピー元のDataSetは、型付DataSet?型無しDataSet?

・C# + ASP.NET でという話で宜しいでしょうか?
 (ASP.NETで質問されていますが、質問内容みると、C#という
 分類での質問になり、ASP.NETではないような気がします)

少々情報が足りないので、回答が的外れになるかもしれませんが、
どのDB&接続方法にしても、名前空間とクラス名が違うだけで
基本ロジック自体は、ほぼ一緒のため、
下記、型付きDataSetで、SQL Serverの例で、サンプル記載しておきます。

もし、SQL Serverじゃない&型無しDataSetの場合だったり、
どう応用したらいいかわからないという場合は、また質問して下さい。

#############################################################

// コピー元のDataTableを取得
DataTable d = コピー元DataTableを取得;

// データベースの接続
//(本来であれば、web.configやapp.configに設定されている接続先を取得する方法が望ましいわけで...)
System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection("Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DB名;Data Source=DBサーバのIPアドレス");

conn.Open();

// コピー元のデータ数分だけループ
foreach (DataRow row in d.Rows)
{
  // INSERT用SQLを生成
  System.Text.StringBuilder sql = new System.Text.StringBuilder();

  sql.Append("INSERT INTO [コピー先のスキーマ].[コピー先テーブル名] ");

  // INSERT項目
  System.Text.StringBuilder insertColumns = new System.Text.StringBuilder();

  // INSERT値
  System.Text.StringBuilder valueColumns = new System.Text.StringBuilder();

  // DataTableの列数分だけループ
  foreach (DataColumn col in d.Columns)
  {
    insertColumns.AppendFormat("{0},", col.ColumnName);

    // 列の型が文字列型の場合
    if (col.DataType == typeof(String))
    {
      valueColumns.AppendFormat("'{0}',", row[col.ColumnName].ToString());
    }
    else
    {
      // 列の型が文字列型以外の場合
      valueColumns.AppendFormat("{0},", row[col.ColumnName].ToString());
    }
  }

  // 不要な「,」を削除
  insertColumns.Remove(insertColumns.Length - 1, 1);
  valueColumns.Remove(valueColumns.Length - 1, 1);

  // INSERT用SQL文の生成
  sql.AppendFormat("({0}) VALUES ({1})", insertColumns.ToString(), valueColumns.ToString());

  // SQLの実行
  System.Data.OleDb.OleDbCommand command;
  command = new System.Data.OleDb.OleDbCommand(sql.ToString(), conn);
  command.ExecuteNonQuery();

  command.Dispose();
  command = null;
}

// DBの接続を閉じる
conn.Close();
conn.Dispose();
conn = null;

確認ですが、

・使っているデータベースは何ですか?
 (SQL Server or Oracle or Access or その他?)

・DBの接続方法には、何を使ってますか?
 (SqlClient? OleDb?)

・コピー元のDataSetは、型付DataSet?型無しDataSet?

・C# + ASP.NET でという話で宜しいでしょうか?
 (ASP.NETで質問されていますが、質問内容みると、C#という
 分類での質問になり、ASP.NETではないような気がします)

少々情報が足りないので、回答が的外れになるかもしれませんが、
どのDB&接続方法にし...続きを読む

QASP.NET TextBox 入力制限

ASP.NETでテキストボックス内のIMEのモードを
ひとつは全角カナ、ひとつは半角英数のような感じで
プログラムで制御する方法を教えてください。

Aベストアンサー

こちらこそ言葉足らずだったでしょうか。

今までの回答は全て、Webフォーム(ASP.NET)での回答をしていますよ。
WindowsForm(Form1.vb)の話ではありません。

下記は、Webフォーム(ASP.NET)でのTextBox1(HTML上はINPUTタグ)にIME-MODEをオン、
TextBox2(HTML上はINPUTタグ)にIME-MODEを不可にした場合の方法です。

1).aspxファイルのデザインにてTextBox1、TextBox2を配置します。

2).aspx.vbファイルにページロードイベントにて下記のコードを記述すれば、IMEの制御が設定されます。

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
TextBox1.Style.Add("ime-mode", "active")
TextBox2.Style.Add("ime-mode", "disabled ")
End Sub

それが今までの回答です。


もしかして想定しているイメージと異なるのでしょうか?
サーバーサイドでのコーディングをせずに行いたいと言うことでしょうか?
であれば、スタイルシートで制御させます。

1).aspxファイル内に書きのスタイルシートタグを埋め込みます。
<style type="text/css">
<!--
.ime-mode-active { ime-mode:active; }
.ime-mode-disabled { ime-mode: disabled; }
-->
</style>

2).
TextBox1のCssClassプロパティに"ime-mode-active"を設定します。
TextBox2のCssClassプロパティに"ime-mode-disabled"を設定します。

回答になっていますでしょうか?

こちらこそ言葉足らずだったでしょうか。

今までの回答は全て、Webフォーム(ASP.NET)での回答をしていますよ。
WindowsForm(Form1.vb)の話ではありません。

下記は、Webフォーム(ASP.NET)でのTextBox1(HTML上はINPUTタグ)にIME-MODEをオン、
TextBox2(HTML上はINPUTタグ)にIME-MODEを不可にした場合の方法です。

1).aspxファイルのデザインにてTextBox1、TextBox2を配置します。

2).aspx.vbファイルにページロードイベントにて下記のコードを記述すれば、IMEの制御が設定されます。

Protected Su...続きを読む

QDataTableから条件を満たした行を別のDatatableへコピーしたい

VC#2005とSQLServer2005ExpressEditionでWindowsアプリケーションを作成しています。

データベースの中から1つのマスタテーブルのデータを呼び出すのにTableAdapterを使ってDataTableにデータをバインドしました。
そこから条件を満たしている行をすべて抽出して同じ型のDataTableにデータをコピーしたいのです。

ですから、DataTableは2つ用意しています。1つは上記の通りデータをバインドしていますが、もう1つは宣言しただけなのでまだ空っぽの状態です。
DataTableにはカラムが3列あり、その中の1列をグループIDとしています。
条件としてはグループIDが同じであるということです。
やりたいことは条件を満たしている行をすべて抽出して空のデータテーブルにコピーすることです。

どなたかご存知の方いらっしゃれば教えてください。
よろしくお願いします。

Aベストアンサー

C#だったんですね … さほど変わりないと思いますが

お使いのコードが提示されていないのでこちらで適当な変数をでっち上げております
現在お使いのコードを支障の無い範囲で提示しましょう

//元のデータテーブルがdtSourceとすると
// テーブル構造をコピー
DataTable dt = dtSource.Clone();
DataRow r = null;
foreach( DataRow dtRow in dtSource.Select("選択するための文字列"))
{
  r = dt.NewRow();
  for( int n = 0; n < dtRow.ItemArray.Length; n++ )
  {
    r[n] = dtRow[n];
  }
  dt.Rows.Add( r );
}
といった具合になると思います

# 前回の投稿中のstSorceはdtSourceの単なるミスです


人気Q&Aランキング