我想使用jQuery从单选按钮集中取出选中的单选按钮.
这里的表单对象不是jQuery对象,而是"普通"javascript对象.
我想要以下内容:
//"where" should fliter the jQuery Array
var myVal = $(form.RadioSet).where(':checked').val();
Run Code Online (Sandbox Code Playgroud)
我知道我可以用这个得到我的结果:
var myVal = $(form).find('input[name=RadioSet]:checked').val();
Run Code Online (Sandbox Code Playgroud)
但是,使用"输入"和"名称"语法进行更多输入.
有任何想法吗?
谢谢,
重构此代码的优雅方法是什么?
说,我有以下对象
public class SomeObject
{
public SomeInnerObject1 Cat { get; set; }
public SomeInnerObject2 Dog { get; set; }
public class SomeInnerObject1
{
public int Age { get; set; }
public string AgeAsString
{
get
{
if(Age < 0 )
throw new Exception();
return Age.ToString();
}
}
}
public class SomeInnerObject2
{
public string BirthDayString { get; set; }
public DateTime BirthDay { get { return DateTime.Parse(BirthDayString); } }
}
}
Run Code Online (Sandbox Code Playgroud)
并说,我必须设置一些我需要设置的文本框值
var obj = new SomeObject
{
Cat …Run Code Online (Sandbox Code Playgroud) 我正在使用EF 4并尝试使用Moq对以下行进行单元测试:
var convertError = models
.Where(x => SqlFunctions.StringConvert((decimal?) (x.convert ?? 0)) == "0")
.Any();
Run Code Online (Sandbox Code Playgroud)
SqlFunctions.StringConvert()如果它检测到上下文被模拟,它似乎会抛出.
它给出了一个错误说:
只能从LINQ到实体调用此函数
是否有可能告诉SqlFunctions.StringConvert返回一个模拟对象,以便我可以摆脱这个错误?
我想知道在Umbraco中存储实体列表的最佳方法是什么.
说,我有一个页面列出了一堆联系信息(姓名,公司地址,电话号码等).我希望网络管理员能够在Umbraco内轻松创建和编辑它们.
我应该创建一个新的数据类型调用联系人.并在该数据类型中具有这些属性?
如果是这样,这是一个好习惯吗?我一直认为Umbraco中的每个节点都被认为是一个页面.
如果没有,我还有其他选择吗?
谢谢,
驰
假设我有以下代码将用户插入MVC应用程序中的MS Dynamics:
public bool CreateContact(string email)
{
if (crm.contacts.Count(x => x.Email == email) > 0)
return false; //Email already exist in the Crm. Skip
var contact = new contact {Email = email};
crm.AddTocontacts(contact);
crm.SaveChanges();
return true;
}
Run Code Online (Sandbox Code Playgroud)
它非常适合阻止用户使用相同的电子邮件地址注册,直到最近我们遇到Dynamics的主要性能问题.
显然,用户会遇到很大的延迟,并经常三次点击触发此代码的按钮.
问题是,.Count()在不同的Http请求中同时触发.SaveChanges()在第一个Request中完成.因此,我们看到的联系人具有相同的电子邮件地址.
虽然我已经从客户端添加了一个修复程序,但我想看看是否可以在服务器端完成此操作.
什么是使这个线程安全的好策略?
虽然在CRM中添加约束是最好的解决方案,但是我现在无法实现该解决方案,因为在发现此问题之前很久就存在CRM中的重复项.显然,有多个应用程序与CRM对话.
由于锁定和线程的经验很少,我最终做了以下事情:
internal static class ContactLock
{
internal static readonly object Locker = new object();
}
public bool CreateContact(string email)
{
lock(ContactLock.Locker)
{
if (crm.contacts.Any(x => x.Email == email))
return false; //Email already exist in the Crm. …Run Code Online (Sandbox Code Playgroud) 假设我正在使用AngularJS构建一个C#应用程序.
我想设置来自服务器端的配置对象,并基本上将该配置注入工厂.工厂所在的另一个.JS文件.
怎么会这样做?
我在这里设置了一个JS小提琴示例:
我有以下代码:
<html>
<head>
<title>Contact test</title>
<script type="text/javascript" src="cordova-2.2.0.js"></script>
<script type="text/javascript" src="app/lib/jquery.min.js"></script>
</head>
<body>
<script type="text/javascript" charset="utf-8">
alert('Add Listener');
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
alert('Device is ready');
navigator.contacts.find("*", function(contacts) {
for (var i = 0; i < contacts.length; i++) {
$('body').append('<div>' + contacts[i].displayName + '</div>');
}
}, function(error) {
alert('Contacts.find failed: ' + error);
});
}
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我的PhoneGap设置为2.2.0版.代码是一个zip文件,只有:
index.html app/lib/jquery.min.js
没有cordova-2.2.0.js,没有config.xml.
当我在Ripple中测试时,它会按预期给出一个联系人列表.
当我在手机上部署应用程序(三星Galaxy Nexus,运行Jelly Bean)时,它会给我一个警告窗口,上面写着"Contacts.find failed:JSON error".
看起来方法"navigator.contacts.find"失败了.
起初我认为这是一个权限问题,但是当我安装应用程序时,我能够看到该应用程序要求"您的个人信息",其中包含来自手机的阅读联系人.
我想知道出了什么问题?
c# ×3
angularjs ×1
asp.net-mvc ×1
cordova ×1
dynamics-crm ×1
javascript ×1
jquery ×1
mocking ×1
moq ×1
refactoring ×1
try-catch ×1
umbraco ×1
unit-testing ×1