我正在构建一个asp.net(3.5)网络应用程序,并想知道你是否知道我可以做任何方式,以便有一些离线功能.
这是必要的,因为人们将能够在他们的设备上"安装"web应用程序(例如,使用iPhone上的"添加到主屏幕"功能),然后在他们离线时使用该应用程序; 用法只会受到限制(此时也不需要服务器调用).
这可以用.aspx页面完成吗?
编辑 - .manifest补充说:
CACHE MANIFEST
index.aspx
/logo.png
/main.css
/main.js
Run Code Online (Sandbox Code Playgroud)
编辑2号 -
我们让它以一种时尚的方式离线工作; 它在safari中有效,但我们不想在safari中使用它,我们希望它作为一个独立的应用程序.当我们尝试像这样运行它时,我们得到'无法连接到服务器错误'.这是否可以使用.aspx页面?
编辑3号 -
我们已经使用.html页面工作但仍然没有使用.aspx
编辑4-
它现在正在工作,虽然我们不确定为什么!我们上周将index.aspx添加到了cache.manifest的'network'部分(上周没有工作!),这可能有所帮助,但一旦我知道我会更新你实际发生的事情!
感谢大家的帮助!
我的聚合功能有问题.我正在尝试从数据库中获取用户最常见的订单,但我只返回名称和计数.我已经尝试过使用$project运算符,但我似乎无法让它返回除$group声明中的内容之外的任何内容.
这是我目前的聚合函数:
OrderModel.aggregate(
{$unwind: "$products"},
{$match: { customerID: customerID }},
{$group: { _id: "$products.name", count: {$sum:1}}},
{$project: {name: "$_id", _id:0, count:1, active:1}},
{$sort: {"count" : -1}},
{$limit: 25 })
Run Code Online (Sandbox Code Playgroud)
这只产生如下输出,{"count":10, "name": foo"}而我想返回整个对象; 嵌入式文档和所有.我出错的任何想法?
编辑 - 添加了示例文档和预期输出
文献:
{
"charge": {},
"captured": true,
"refunds": [
],
"balance_transaction": "txn_104Ics4QFdqlbCVHAdV1G2Hb",
"failure_message": null,
"failure_code": null,
"amount_refunded": 0,
"customer": "cus_4IZMPAIkEdiiW0",
"invoice": null,
"dispute": null,
"statement_description": null,
"receipt_email": null
},
"total": 13.2,
"userToken": "cus_4IZMPAIkEdiiW0",
"customerID": "10152430176375255",
"_id": "53ad927ff0cb43215821c649",
"__v": 0, …Run Code Online (Sandbox Code Playgroud) 我正在构建一个动态的RadioButtonList来列出特定搜索项的所有记录,并允许用户选择相关选项.然而,我遇到的问题是SelectedInhdexChanged事件永远不会被触发.
我已经尝试初始化RadioButtonList并在page_load和page_init方法中分配它的事件处理程序.我也尝试将RadioButtonList拖到页面上并双击它以创建事件处理程序,但仍然没有运气.
有任何想法吗?我已粘贴下面的代码供您查看:
这是我的Page_Load和事件处理程序方法:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
measureDropdown = loadDropdown("GetMeasuringTypes", measureDropdown);
categoryDropdown = loadDropdown("GetCategories", categoryDropdown);
}
rBtn = new RadioButtonList();
rBtn.CausesValidation = true;
rBtn.SelectedIndexChanged += new EventHandler(rBtn_SelectedIndexChanged);
}
void rBtn_SelectedIndexChanged(object sender, EventArgs e)
{
moreThanOneLbl.Text = "Woohoo!";
}
Run Code Online (Sandbox Code Playgroud)
这是我如何将列表项分配给RadioButtonList(来自数据表):
foreach (DataRow row in table.Rows)
{
ListItem li = new ListItem();
li.Value = row[0].ToString();
li.Text = row[1].ToString() + ": " + row[2].ToString();
//rBtn.Items.Add(li);
RadioButtonList1.Items.Add(li);
}
Run Code Online (Sandbox Code Playgroud) 我在UIButtons上的操作遇到了一些麻烦.我正在以编程方式创建4个按钮,但我无法触发TouchUpInside事件.
我已经阅读了SO但是我仍然遇到麻烦所以任何指针都会非常感激!
这是我创建和设置按钮及其动作的代码:
UIButton *btn;
float newWidth = 10;
for (int i = 0; i < _btnImages.count; ++i) {
btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
CGRect imageFrame = CGRectMake(/*X*/newWidth, /*Y*/height - 80, 65, 65);
btn.frame = imageFrame;
btn.tag = i;
[btn setBackgroundImage:[UIImage imageNamed:[_btnImages objectAtIndex:i]] forState:UIControlStateNormal];
[btn addTarget:self
action:@selector(btnSelected:)
forControlEvents:UIControlEventTouchUpInside];
[btn setEnabled:true];
[self addSubview:btn];
newWidth = newWidth + 75;
}
Run Code Online (Sandbox Code Playgroud)
这是btnSelected方法:
-(void)btnSelected:(UIButton *)button
{
NSLog(@"Button %ld Clicked",(long int)[button tag]);
}
Run Code Online (Sandbox Code Playgroud)