Topへ

asp.netに関するブログ記事(Blog)

webアンケートシステムの構築を行いました

今回は展示会設営企業様からのご依頼で、非接触型アンケートシステムを構築いたしました。

展示会にいらしたお客様からアンケートを取らせていただくシステムなのですが、今まではブースに設置していたタブレット端末で順次アンケートに回答していただく

形式が多かったと存じます。

この度は、コロナの影響があり毎回消毒するのも大変だしってことで、お客様にQRコードを読み取っていただきアンケートページにアクセスする方式のシステムを作成しました。


asp.net

弊社は、長年マーケッティングリサーチを行っている会社様のアンケートシステムを開発・運用してきましたので設計的にはあまり苦労はしなかったのですが、スマフォでお客様の

名刺の写真を取り込むところが、結構苦労しました。

いつもながら泣かされる部分なんですが、iphoneとandroidの仕様の違いがあります。

あとは、アンケートを対話形式で定義する部分のjavascriptの作り込みが厳しかった💧

最近インフラ構築の仕事が多くシステムの構築サイクルが間延びしてまして、javascriptの言語構文の細かい作法、結構忘れてるんですよね。

開発しだすと思い出すんですが😁

現、菅政権のブレーンである デービッド・アトキンソン氏が日本の中小企業は生産性が低いって言ってますけど、たしかにそういうところがあります。ソフト業界では。

似たような仕事を繰り返せば、開発効率は上がりますが。営業的な戦略が必要だし、方向性を間違えると全然仕事が取れないってことにもなりかねないので、
ついつい目先の仕事をこなしてしまう。
 
 

表示系コントロールで自動付加されるhtmlタグ

asp.netには以下の表示系コントロールがありますが、実行時それぞれのhtmlタグが自動的に付加されます。CSSやjavascriptなどを生成する場合、自動的にhtmlタグが付加されてしまうと不都合な場合があります。その場合、 literalコントロールを使用します。

コントロール 自動付加されるhtmlタグ
labelコントロール span
panelコントロール div
placeholderコントロール 何も付加されない
literalコントロール 何も付加されない

HtmlGenericControl は、特定の HTML サーバー コントロールによって直接表されないすべての未知の HTML サーバー コントロール タグ (spandivbodyなど) に対応して、ASP.NET サーバー コントロールを実装します。

 

 

実装方法ですが、例えばdivを定義する場合、

<div id="testdiv" runat="server"></div>

というようにサーバコントロールとして定義します。

サーバサイドでこのdiv要素はHtmlGenericControlクラスとして生成されます。

HtmlGenericControlはプロパティとしてinnerHtmlを実装していますので、このプロパティにHTMLを設定すればサーバサイドでもHTMLの出力が可能となります。