初始化实体框架上下文时.
一种是在类级别初始化,例如
public class EntityContactManagerRepository
: ContactManager.Models.IContactManagerRepository
{
private ContactManagerDBEntities _entities = new ContactManagerDBEntities();
// Contact methods
public Contact GetContact(int id)
{
return (from c in _entities.ContactSet.Include("Group")
where c.Id == id
select c).FirstOrDefault();
}
}
Run Code Online (Sandbox Code Playgroud)
另一种方法是在方法级别初始化.
public class EntityContactManagerRepository
: ContactManager.Models.IContactManagerRepository
{
// Contact methods
public Contact GetContact(int id)
{
using (var entities = new ContactManagerDBEntities())
return (from c in entities.ContactSet.Include("Group")
where c.Id == id
select c).FirstOrDefault();
}
}
Run Code Online (Sandbox Code Playgroud)
从Ado.Net背景来看,我更喜欢后来的one-initialize in方法,但第一个是来自Stephen Walthe开发的例子.或者另一个问题,它是否重要?
Razor和ASPX在MVC项目中有什么区别吗?
这只是语法吗?这就是我读完之后的想法...我错了吗?
我有一个功能:
function Check(o)
{
alert(/* o is a DOM element ? "true" : "false" */);
}
Run Code Online (Sandbox Code Playgroud)
如何检查参数o是否是DOM对象?
我有一个叫做User属性的类Name
public class User
{
[Required]
public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我想验证它,如果有任何错误添加到控制器ModelState或实例化另一个模型状态...
[HttpPost]
public ActionResult NewUser(UserViewModel userVM)
{
User u = new User();
u.Name = null;
/* something */
// assume userVM is valid
// I want the following to be false because `user.Name` is null
if (ModelState.IsValid)
{
TempData["NewUserCreated"] = "New user created sucessfully";
return RedirectToAction("Index");
}
return View();
}
Run Code Online (Sandbox Code Playgroud)
这些属性适用于UserViewModel,但我想知道如何在不将其发布到操作的情况下验证类.
我怎么能做到这一点?
我正在提出请求然后我就堕胎了.
var x = $.get(url, function (d, e, xhr) { alert(d); });
x.abort();
Run Code Online (Sandbox Code Playgroud)
问题是它执行success函数并返回空数据... (例如这里)
是否有一个jQuery方法可以中止?或者有没有办法检查是否xhr已中止?
我有桌子 Tb
ID | Name | Desc
-------------------------
1 | Sample | sample desc
Run Code Online (Sandbox Code Playgroud)
我想在INSERT上创建一个触发器,它将改变插入的值Desc,例如:
INSERT INTO Tb(Name, Desc) VALUES ('x', 'y')
Run Code Online (Sandbox Code Playgroud)
会导致
ID | Name | Desc
-------------------------
1 | Sample | sample desc
2 | x | Y edited
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,我得到了插入的值,将其Desc更改为大写并添加edited到最后.
这就是我需要的,得到Desc插入和修改它.
我怎样才能做到这一点?
插入更新后处理它会更好吗?或者使用INSTEAD OF INSERT触发并在每次表结构更改时修改它?
以下代码:
var canonical = new TagBuilder("link");
canonical.MergeAttribute("rel", "canonical");
canonical.MergeAttribute("href", url);
return new MvcHtmlString(canonical.ToString());
Run Code Online (Sandbox Code Playgroud)
创建一个标签:
<link href="http://local.domain.com/" rel="canonical"></link>
Run Code Online (Sandbox Code Playgroud)
是否可以渲染
<link href="http://local.domain.com/" rel="canonical"/>
Run Code Online (Sandbox Code Playgroud)
相反,使用TagBuilder?
我有这个var
var x = "<div class=\\\"abcdef\\\">";
Run Code Online (Sandbox Code Playgroud)
这是
<div class=\"abcdef\">
Run Code Online (Sandbox Code Playgroud)
但是我需要
<div class="abcdef">
Run Code Online (Sandbox Code Playgroud)
我怎么能"unescape"这个var来删除所有转义字符?
我需要一些可以从DLL文件(C#.NET代码)生成PDB的东西,有没有免费程序可以做到这一点?
长时间听众 - 第一次来电.我希望得到一些建议.我一直在阅读.net中的缓存 - 包括System.Web.Caching和System.Runtime.Caching.我想知道我可以获得什么额外的好处与简单地创建一个带锁定的静态变量.我目前的(简单的)缓存方法是这样的:
public class Cache
{
private static List<Category> _allCategories;
private static readonly object _lockObject = new object();
public static List<Category> AllCategories
{
get
{
lock (_lockObject)
{
if (_allCategories == null)
{
_allCategories = //DB CALL TO POPULATE
}
}
return _allCategories;
}
}
}
Run Code Online (Sandbox Code Playgroud)
除了到期(我不希望它到期)我不知道使用内置缓存的好处是什么.
也许对于不适用于我的更复杂的缓存方案有好处 - 或者我可能只是缺少某些东西(这不是第一次).
那么,如果我想要一个永不过期的缓存,使用缓存有什么好处?静态变量不这样做吗?
c# ×6
javascript ×3
.net ×2
asp.net-mvc ×2
ajax ×1
asp.net ×1
caching ×1
debugging ×1
disassembly ×1
dom ×1
escaping ×1
jquery ×1
pdb-files ×1
razor ×1
sql ×1
sql-server ×1
static ×1
t-sql ×1
triggers ×1