top 35 asp net web api interview questions with answers
初心者および経験豊富な専門家向けの、最も人気のあるASP.NetおよびWeb APIインタビューの質問と回答および例のリスト:
ウェブサービス 以前のチュートリアルで詳細に説明されました。このチュートリアルでは、最もよくあるWebAPIインタビューの質問のいくつかに焦点を当てます。
これらのASP.NetおよびWebAPI面接の質問はトレンドであり、採用プロセスの技術ラウンド中に尋ねられています。質問には主観的と客観的の両方が含まれます。
難易度はまちまちで、初心者にも経験豊富な専門家にも適しています。
35最高のASP.NetおよびWebAPIインタビューの質問と回答
以下にリストされているのは、面接の準備プロセスで役立つ最も人気のあるASP.NetおよびWebAPIの面接の質問です。
探検しよう!
Q#1)ASP.Netとは何ですか?
回答: ASPはActiveServerPagesの略です。 Microsoftは、レガシーASPの更新バージョンであるフレームワーク(ASP.Net)を考案しました。フレームワークのインストール中にライブラリファイルとASPエンジンを変更する必要はありません。
これにより、IIS(Internet Information Server)は、レガシーASPスクリプトとASP.Netスクリプトの両方を同じシステムに保持することが容易になりました。 IISは、ASP.NetまたはWebアプリケーションにインターネットベースのサービスを提供するために使用されるMicrosoftが提供するサーバーに他なりません。すべてのWebページスクリプトはIISによって実行されます。
Q#2)ASP.Netでのキャッシュとはどういう意味ですか?
回答: あなたが訪問しているとしましょう グーグル 非常に頻繁に、ブラウザ(Chromeなど)で新しいタブを開くと、このWebページは「最も頻繁に使用される」セクションに表示されます。
これは、google.comがマシンにキャッシュされており、最近アクセスされなかった他のWebサイトと比較してはるかに短い時間で開かれることを意味します。これはキャッシングの例です。
したがって、キャッシュは、頻繁にアクセスされるファイルをキャッシュメモリに保持し、ファイルまたはデータの実際のアドレスではなく、キャッシュ自体からそれらにアクセスするメカニズムです。
Q#3)キャッシングの種類は何ですか?
回答: 以下に示すように、キャッシュには3つの異なるタイプがあります。
- ページキャッシング
- データキャッシング
- フラグメントキャッシング
Q#4)ページのライフサイクルとは何ですか?ページライフサイクルのイベントは何ですか?
回答: ASP.Netページの実行中、ページはイベントのリストを受け取ります(開始(初期化)の直前から終了(レンダリング)まで)。これらのイベントがページ上で時系列に発生することは、ページライフサイクルと呼ばれます。
以下は、ページのライフサイクル中に発生するすべてのイベントのリストです。
Q#5)ViewStateとは何ですか?ページライフサイクルのどのイベントで、ViewStateを使用できますか?
回答: ViewStateは、WebページのPostBackイベントでユーザー入力データをページに保存できるようにする状態管理手法です。 ViewStateは、ページライフサイクルのInit後およびPageLoadイベントの前に使用できます。
Q#6)ViewStateのアイテムのライフスパンとは何ですか?
回答: ViewStateのアイテムの寿命は、現在のページの寿命によって異なります。現在のページが存在する限り、それらは存在します。
Q#7)すべてのWebサーバーコントロールの親クラスは何ですか?
回答: すべてのWebサーバーコントロールの親クラスは「System.Web.UI.Control」です。
Q#8)ViewStateに値を格納して取得するにはどうすればよいですか?
回答: ご存知のとおり、ViewStateはページの値とユーザー入力をページに保存します。
以下は、ViewStateに値を格納して取得する方法の例です。
ViewState ('emp') = 'Saket Saurav'; // 値をViewStateに保存します
string value = ViewState (“ emp”)。ToString(); // 情報を取得する
Q#9)Webフォームが継承される基本クラスとは何ですか?
回答: ページクラスは、すべてのWebFormsの基本クラスです。
Q#10)ASP.Netアプリケーションから電子メールを送信するためのコードを記述します。
回答: コードスニペットの記述は、ASP.netとSeleniumのインタビューの両方で非常に一般的です。 Seleniumについては、電子メールの送信方法についてすでに説明しました。
以下は、ASP.Netアプリケーションから電子メールを送信するための説明とコードです。
説明
以下のプログラムでは、MailMessageのオブジェクトを作成しています。その後、送信者と受信者の電子メールアドレスを指定します。次に、件名をソフトウェアテストとして指定します。
後で、電子メールの本文を作成し、ローカルホストサーバーを介してSimple Mail TransferProtocolを使用して送信します。
コメント付きのコード
MailMessage mail = new MailMessage (); //creating an obj for MailMessage mail.From = “xyz@xyz.com'; //specifying the sender mail id mail.To = 'abc@abc.com'; //specifying the recipient mail id mail.Subject = 'Software Testing'; //specifying the subject mail.Body = 'Hi, Sending an email'; //drafting the body of the email SmtpMail.SmtpServer = 'localhost'; //sending through the localhost server SmtpMail.Send (mail); //passing the attribute “mail” in the Smtp.Send()
Q#11)ASP.Netアプリケーションをカスタマイズするために使用できるファイルは何ですか?
回答: web.configは、新しいテーマの適用、画像のサイズ変更、画像の切り抜きなど、ASP.Netでアプリケーションをカスタマイズするためのファイルです。
Q#12)ASP.Netのクエリ文字列とは何ですか?
回答: クエリ文字列は、アドレスまたはURLの一部として任意のWebブラウザに渡される文字列(文字のコレクション)です。多くの場合、これは疑問符(?)で区切られます。
クエリ文字列の構文は次のとおりです。 Request.QueryString(variable)((index).count)
Q#13)コードビハインドとコードインラインの違いは何ですか?
回答:
- コードビハインドは別のクラスファイルに記述されたコードですが、コードインラインはASP.NetWebページ内に記述されたコードです。
- Code Behindの拡張子は.aspx.csまたは.aspx.vbですが、Code Inline(ASP.Net内にあるため)の拡張子は.aspxのみです。コードインラインは、HTMLとともにタグ内に記述されます。
- すべてのWebページのコードは、インラインコードから解放された.dllファイル(データリンクライブラリファイル)にコンパイルされます。
Q#14)ASP.Netのディレクティブとは何ですか?すべての重要な指令をリストアップしてください。
回答: ディレクティブは、.aspxページがフレームワークによってどのように処理されるかを説明するために使用される命令です。ディレクティブが異なれば、オプションや属性も異なり、特定のページのクラス名、その説明、または分離コードクラスのファイル名を簡単に提供できます。
それでは始まります 。
構文は次のとおりです。
重要な指令:
- @ページ
- @アセンブリ
- @コントロール
- @主人
- @MasterType
- @Implements
- @インポート
- @参照
- @PreviousPageType
- @OutputCache
- @登録
Q#15)SQL通知とSQL無効化とは何ですか?
回答: SQL通知は、キャッシュにコピーされるデータに変更があったときにトリガーされる通知です。
SQLの無効化は、キャッシュ内のコピーされたデータに対してデータベース内のデータに変更が見つかった場合に即座に無効化するもの(パーサーと呼ぶことができます)です。
Q#16)セッション状態モードとは何ですか? ASP.netの重要なセッション状態モードのいくつかをリストします。
回答: セッション状態は、セッションオブジェクトがシステムにログインしている特定のユーザーに関する情報を格納するものです。このセッション情報には、ユーザーIDまたはパスワード、ユーザーの最後のログインに関する詳細、最後のアクティビティなどがあります。
このセッション状態には、さまざまなストレージオプションがあります。この場合も、各オプションはセッション状態モードの値によって処理されます。
重要なセッション状態モード
- 状態サーバーモード: セッション状態をASP.NetStateServiceに格納します。セッション状態は、特定のリージョンでのアプリケーションの再起動によって妨げられません。
- InProcモード :セッション状態がWebサーバーのメモリに保存されるデフォルトモード。
- SQLServerモード :セッション状態はSQLServerデータベースに保存されます。これは、アプリケーションが再起動してもセッション状態を保持するという点でStateServerと同じです。
- カスタムモード :セッション状態はカスタムストレージプロバイダーに保存されます。それ(カスタムストレージプロバイダー)はユーザーが構成できます。
- オフモード :これにより、オフラインモードが有効になります。このモードでは、セッション状態は無効になります。
Q#17)Server.TransferとResponse.Redirectの違いは何ですか?
回答: ご存知のとおり、Server.TransferとResponse.Redirectの両方を使用して、ユーザーがページの実行中に1つのページから別のページに移動できるようにします。それらの主な違いは、Server.Transfer(名前が示すように)では、転送はサーバーによって行われ、Response.Redirectではブラウザによって行われることです。
Q#18)ASP.netでWebサービスを定義します。
回答: Webサービスは、ネットワークを使用して1台のマシンから別のマシンにサービスを提供するソフトウェアサービスです。これらのサービスはXMLを利用し、データ送信にSSLとWSSを提供します。
Q#19)多言語ウェブサイトとは何ですか?
回答: 複数の言語をサポートするWebサイトは、多言語Webサイトと呼ばれます。これらのウェブサイトのコンテンツは異なる言語であり、複数の言語に変換することができます。いくつかの人気のある多言語のウェブサイトが含まれます Msn 、 フェイスブック 、など。
Q#20)ユーザーの状態またはデータをラップするオブジェクトはどれですか?
回答: セッションオブジェクト。
Q#21)セッションオブジェクトとは何ですか?
回答: セッションオブジェクトは、ユーザーのセッションに関する情報を格納するオブジェクトです。共通情報には、名前、ID、設定、設定の変更などが含まれます。セッションオブジェクトは、セッションの開始時に初期化され、セッションの終了時に破棄されます。
Q#22)認証と承認の違いを説明してください。
回答: 承認 システムへのアクセスを許可されたユーザーであるかどうかを確認するプロセスです。これには、ログイン資格情報の検証が含まれます。
例えば、 Facebookへのログインアクセス。
アニメを無料で見る場所
認証 システム内の特定のリソースへのアクセスを提供するプロセスです。これには、プライベートデータ、リソースキー、トークンなどへのアクセスが含まれます。 例えば、 Facebookでプライベート写真を表示するためのアクセス権。
要約すると、認証された人だけがリソースの使用を許可できます。
Q#23)ページ上のすべてのコントロールを検証する方法はどれですか?
回答: Page.Validate()
Q#24)ASP.Netアプリケーションにテーマを適用するにはどうすればよいですか?
回答: web.configという設定ファイルがあります。 web.configファイル内で、以下に示すようにタグに移動してテーマを適用できます。
Q#25)WebサービスはPOMプロジェクトのようなデータリーダーをサポートしていますか?
回答: いいえ、違います。ただし、入力データの受け渡しに使用できるデータセットをサポートしています。
Q#26)Web APIとは何ですか? Web APIで使用されているプロトコルはどれですか?
回答: Web APIは、クライアントマシンとWebサーバー間の通信を容易にするインターフェイスとして定義できます。
でフライトを予約する非常に一般的なシナリオを考えてみましょう www.makemytrip.com、 これは、複数の航空会社からの情報を集約するオンライン旅行サービスです。フライトの予約に行くときは、旅行日/帰国日、クラスなどの情報を入力し、検索をクリックします。
これにより、複数の航空会社の価格とその空室状況が表示されます。この場合、アプリケーションは複数の航空会社のAPIと相互作用し、航空会社のデータへのアクセスを提供します。
別の例は www.trivago.com これは、特定の都市のさまざまなホテルの価格と空き状況を比較して一覧表示します。このWebサイトは、複数のホテルのAPIと通信してデータベースにアクセスし、Webサイトから価格と在庫状況を一覧表示します。 HTTPプロトコルはWebAPIで使用されます。
Q#27)自動テストを開発し、テストツールを作成するために、テスターと開発者が使用するライブラリはどれですか?
回答: TestAPIは、アルゴリズムを使用して自動テストおよびテストツールを作成するために使用されるライブラリ(ユーティリティ)です。
Q#28)APIのURLで渡すことができるパラメーターは何ですか? GETとPOSTは同じURLを使用できますか?
回答: 完全なエンドポイントを定義するためにURLに渡すことができるいくつかのパラメーターがあります。これらは、コンテキストキー、ドキュメントキー、またはAPIが正確なエンドポイントに到達するのを容易にするものです。
例えば、 ドキュメントの「テスト」をヒットする必要があります すぐに コンテキストキーcom.express.prestoを使用します。
このような場合、URLはたまたまhttps://www.presto.comですが、完全なエンドポイントは次のようになります。
https://www.presto.com/com.express.presto/test
このようにして、エンドポイントが指定されたコンテキストキーを使用してテストドキュメントにヒットすることを確認できます。
はい、GETとPOSTは同じエンドポイントを使用する必要があります。同じエンドポイントを使用しない場合は、一方のURLでレコードを作成し、もう一方のURLから別のレコードを取得しているようになりますが、これは意味がありません。
Q#29)200がすべての正常な操作に対応している場合、なぜ201の応答コードがあるのですか?
回答: これは難しい質問です。ご存知のとおり、Web APIのすべてのHTTP応答コードは開発者が操作でき、応答コードの構成方法はすべてAppDevに依存します。
したがって、成功したすべての操作に対して200または201を使用できます。一般に、200は操作の成功を表し、201はレコードの作成の成功を表します。
Q#30)Web APIがJSONデータのみを返すようにするにはどうすればよいですか?
回答: ヘッダー部分では、値「application / json」を渡す必要があります。
Q#31)Web APIのSwaggerとは何ですか?
回答: Swaggerは、WebAPIで使用される最も一般的なテンプレートです。このテンプレートは、特定のAPIがサポートするさまざまなメソッドに対するAPIの応答を確認するために使用されます。動詞(GETまたはPUT)をクリックし、トークン、本文、またはペイロード(該当する場合)を指定して、「試してみる」をクリックするだけです。
実装の前に、すべての開発者は、APIを表面的にテストできるSwaggerリンクを提供します。そうでない場合は、POSTMANと呼ばれるツールを使用して同じことを実現できます。
(画像 ソース )
Q#32)Swaggerコンポーネントについて説明してください。
回答: 上の画像でわかるように、/ swagger-ui.htmlで終わるURLがあります。すべてのSwaggerURLは/swagger-ui.htmlで終わります。
以下に、Swaggerのさまざまなコンポーネントを示します。
a)ドキュメントの名前: ここで、APIドキュメントはドキュメントの名前です。
b)APIの名前 :製品コントローラーは、APIバージョンとベースURLを持つAPIの名前です。
c)APIがサポートするメソッドのリスト: GET、PUT、POST、およびDELETEは、APIがサポートする一般的なメソッドです。
(画像 ソース )
(画像 ソース )
d)パラメータ :id(コンテキストキー)、name(ドキュメント名)、authorization、content-typeなど、すべてのSwaggerがサポートするパラメーターはほとんどありません。
e)提出する :必要な値をすべて入力したら、すべてのスワガーの送信ボタンである(試してみる)ボタンをクリックする必要があります。
Q#33)HTTPリクエストとレスポンスのメディアタイプは何ですか?
回答: メディアタイプは、要求、応答、画像、およびテキストの形式を指定するために使用されます。
メディアタイプは次のとおりです。
- Image / PngまたはImage / JpgまたはImage / Jpeg
- テキスト/ HTML
- Application / jsonまたはApplication / xml
Q#34)Web APIのBSONとは何ですか?
回答: BSONはBinaryJavascript ObjectNotationの略です。 BSONには、エンコードとデコードが高速なキーと値のペアのオブジェクトがあります。 JSONのように軽量ですが、JSONよりもはるかに高速です。さらに、BSONは読み取り可能な形式ではありません。
Q#35)WebAPIのJSONでインデントを実装するためのコードスニペットを記述します。
回答: 以下は、インデントのコードスニペットです。
var json = GlobalConfiguration.Configuration.Formatters.JsonFormatter; json.SerializerSettings.Formatting = Formatting.Indented;
結論
これで、ASP.NetおよびWebAPIインタビューの質問に関するチュートリアルは終了しました。これらのASP.NetおよびWebAPIの面接の質問に関する十分な知識は、面接を成功させるのに役立ちます。
ASP.NetとWebAPIのインタビューにご期待ください。