واقعاً خسته نباشید آقای نصیری، مجموعه مقالات آشنایی با NHibernate شما عالی است، باعث شد من شروع به یادگیری NHibernate کنم. ممنونم
نظرات مطالب
<div> Number Of Clicks <span data-bind="text: numberOfClicks"></span> times <button data-bind="click: clickMe">Click me</button> </div> <script type="text/javascript"> var viewModel = { numberOfClicks : ko.observable(0), clickMe: function() { var previousCount = this.numberOfClicks(); this.numberOfClicks(previousCount + 1); } }; </script>
<ul data-bind="foreach: places"> <li> <span data-bind="text: $data"></span> <button data-bind="click: $parent.removePlace">Remove</button> </li> </ul> <script type="text/javascript"> function MyViewModel() { var self = this; self.places = ko.observableArray(['Tehran', 'Esfahan', 'Shiraz']); self.removePlace = function(place) { self.places.remove(place) } } ko.applyBindings(new MyViewModel()); </script>
<button data-bind="click: myFunction"> Click me </button> <script type="text/javascript"> var viewModel = { myFunction: function(data, event) { if (event.shiftKey) { } else { } } }; ko.applyBindings(viewModel); </script>
<div data-bind="click: myDivHandler"> <button data-bind="click: myButtonHandler"> Click me </button> </div>
<div data-bind="click: myDivHandler"> <button data-bind="click: myButtonHandler, clickBubble: false"> Click me </button> </div>
public class TextResult : ActionResult { public string FileName { get; set; } public override void ExecuteResult(ControllerContext context) { var filePath = Path.Combine(context.HttpContext.Server.MapPath(@"~/Files/"), FileName); var data = File.ReadAllText(filePath); context.HttpContext.Response.Write(data); } }
public ActionResult DownloadTextFile(string fileName) { return new TextResult { FileName = fileName }; }
public ActionResult DownloadTextFile(string fileName) { var filePath = Path.Combine(HttpContext.Server.MapPath(@"~/Files/"), fileName); return File(filePath, "text"); }
public class CsvActionResult : ActionResult { public IEnumerable ModelListing { get; set; } public CsvActionResult(IEnumerable modelListing) { ModelListing = modelListing; } public override void ExecuteResult(ControllerContext context) { byte[] data = new CsvFileCreator().AsBytes(ModelListing); var fileResult = new FileContentResult(data, "text/csv") { FileDownloadName = "CsvFile.csv" }; fileResult.ExecuteResult(context); } }
public ActionResult ExportUsers() { IEnumerable<User> model = UserRepository.GetUsers(); return new CsvActionResult(model); }
public class LogoutActionResult : ActionResult { public RedirectToRouteResult ActionAfterLogout { get; set; } public LogoutActionResult(RedirectToRouteResult actionAfterLogout) { ActionAfterLogout = actionAfterLogout; } public override void ExecuteResult(ControllerContext context) { FormsAuthentication.SignOut(); ActionAfterLogout.ExecuteResult(context); } }
public ActionResult Logout() { var redirect = RedirectToAction("Index", "Home"); return new LogoutActionResult(redirect); }
[TestMethod] public void The_Logout_Action_Returns_LogoutActionResult() { //arrange var account = new AccountController(); //act var result = account.Logout() as LogoutActionResult; //assert Assert.AreEqual(result.ActionAfterLogout.RouteValues["Controller"], "Home"); }
طراحی یک منوی کانتکست در بلیزر میتواند سخت باشد و زمان زیادی را از شما بگیرد. با استفاده از این کتابخانه شما قادر به طراحی منوی کانتکست هستید. این منو قابلیتهای پیاده سازی افکتهای نمایشی، زیر منو، فعالسازی و غیرفعالسازی گزینهها، استایل اختصاصی، افزودن پویای آیتمها، نمایش منو از طریق کد و ... میباشد