SSブログ

combobox選択値をDatarowで受け取る [Develop]

ComboBoxのDataSourceにDataTableを設定している場合
選択値をDatarowで受け取とる事が出来ます。

cmb.SelectedItem は DataRowViewなので

var dr = ((DataRowView)cmb.SelectedItem).Row;

です。

ASP.NET MVC 改行付きで出力させる [Develop]

ブラウザ上で改行表示させるのに
・\nではもちろん無効
・単純に<br>を結合させるとエンコードされて
そのままタグが文字列として表示される
・セキュリティ上好ましくないので生出力させられない
等、色々問題があります。

コロンブスの卵ですが、以下の方法で出力できます。

例:
りんご <改行>
みかん
と表示させたい

**コントローラ
var 変数 = string.Empty;
変数 += "りんご" + "\n";
変数 += "みかん" + "\n";

**ビュー
@Html.Raw(Html.Encode(変数).Replace("\n", "<br />"))

ASP.NET MVC でのデータセットの永続化 [Develop]

ビュー
<input type="hidden" id="dtData" name="dtData" value="@ViewBag.dt">

コントローラ
DataSetを使わなくてもDataTableだけで出来ました

Encoding enc= Encoding.GetEncoding("UTF-8");
var dt = new MyProject.HhobbyDataTable();

if (values["dtData"] != null && values["dtData"].ToString().Length >0) 
{
  var md = values["dtData"];
  string xml = enc.GetString(Convert.FromBase64String(md));
  System.IO.StringReader xmlSR = new System.IO.StringReader(xml);
  dt.ReadXml(xmlSR);
}
else
{
  var r1 = dt.NewHobbyRow();
  r1.BeginEdit();
  r1.CODE = "A123";
  r1.NAME = "あ";
  r1.EndEdit();
  dt.AddHobbyRow(r1);

  var r2 = dt.NewHobbyRow();
  r2.BeginEdit();
  r2.CODE = "B987";
  r2.NAME = "いやん";
  r2.EndEdit();
  dt.AddHobbyRow(r2);
}

Encoding enc = Encoding.GetEncoding("UTF-8");
var sw = new StringWriter();
dt.WriteXml(sw);
ViewBag.dt = Convert.ToBase64String(enc.GetBytes(sw.ToString()));


Encoding enc= Encoding.GetEncoding("UTF-8");
var ds = new DataSet();

if (values["dtData"] != null && values["dtData"].ToString().Length >0) 
{
  var md = values["dtData"];
  string xml = enc.GetString(Convert.FromBase64String(md));
  System.IO.StringReader xmlSR = new System.IO.StringReader(xml);
  var dt = new MyProject.HhobbyDataTable();
  dt.ReadXml(xmlSR);
  // 戻りの準備
  ds = new DataSet();
  ds.Tables.Add(dt);
}
else
{
  var dt = new MyProject.HobbyDataTable();

  var r1 = dt.NewHobbyRow();
  r1.BeginEdit();
  r1.CODE = "A123";
  r1.NAME = "あ";
  r1.EndEdit();
  dt.AddHobbyRow(r1);

  var r2 = dt.NewHobbyRow();
  r2.BeginEdit();
  r2.CODE = "B987";
  r2.NAME = "いやん";
  r2.EndEdit();
  dt.AddHobbyRow(r2);

  ds.Tables.Add(dt);
}
ViewBag.ds = Convert.ToBase64String(enc.GetBytes(ds.GetXml()));






ASP.NET MVC daetime型のテンプレート [Develop]

テンプレート機能でビュー開発を効率化
http://www.atmarkit.co.jp/fdotnet/aspnetmvc3/aspnetmvc3_07/aspnetmvc3_07_02.html

でサンプルソースをそのままだと、
ディクショナリに null のモデル項目が渡されましたが、このディクショナリには型 'System.DateTime' の null 以外のモデル項目が必要です
が発生
ASP .NET MVC datetime editor template using jQuery datepicker
http://www.nickharris.net/2010/08/asp-net-mvc-editor-template-for-jquery-datepicker/
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<System.DateTime?>" %>
<%: Html.TextBox("",String.Format("{0:yyyy-MM-dd}", Model.HasValue ? Model : DateTime.Today), new { @class = "dp"})%>






ASP.NETからLDAPに接続できない [Develop]

Visual Studio 2008 の ASP.NET にて

ローカルで「Visual Studio 開発サーバー」を使用して
LADP経由でAD情報を取得するWebアプリを開発

開発が完了し、いざ本番機のIISに設置して動作させようとすると
エラーで動作しない (T(エ)T)

IISの設定を見直すと
認証関連でWindows認証がオフに。。。(初期値)
IIS_Authentication.jpg
この設定で動作した

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。