小编nii*_*ico的帖子

asp.net MVC 4 - 输出复选框项目列表,将选择与用户关联 - 允许稍后显示和编辑

ASP.NET C#MVC 4 Code First应用程序 - 在Visual Studio 2012 Express,SQL Server 2012 Express中.

我有一个地方对象.我想在列表中输出所有地方的名称 - 每个地方旁边都有一个复选框.

然后我想登录用户选择他们喜欢的地方 - 并保存.然后,他们可以登录并再次查看它们,并选中相应的复选框.

什么是最好的方法?我是MVC的新手,并不确定这里的最佳实践.

谢谢

更新

下面的CheckboxListFor帮助程序工作得很好,但是如何处理用户选择并不明显(它只返回一个ID列表).

我创建了以下内容来获取ID列表 - 将其转换为对象列表,并将其添加到视图模型中的SelecteCities列表中.这将选择用户在发布页面之前选择的所有复选框:

public ActionResult Examples(PostedCities postedCities)
{
 // ViewModel
 CitiesViewModel cvm = new CitiesViewModel();

 // Create list of cities
 List<City> cities = new List<City>{
  new City { Id = 1, Name = "London"},
  new City { Id = 2, Name = "Saigon"},
  new City { Id = 3, Name = "New York"}
 };

 // Assign list …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc entity-framework asp.net-mvc-4

3
推荐指数
1
解决办法
1571
查看次数

ASP.net Bundle.config VS BundleConfig.cs

我创建了一个新的 ASP.NET 4.5.1 Web 表单项目。

我以前在 MVC 4 中使用过捆绑和缩小。

为什么根目录中有一个 bundle.config 文件 - App_Start 中有一个 BundleConfig.cs 文件 - 它们似乎都列出了要捆绑的文件?

每个是什么,为什么他们似乎做同样的事情?

这个问题在这里被问到但没有真正回答(即使它被标记为这样): Bundling resources via bundle.config vs BundleConfig.cs in ASP.NET 4.5 WebForms

asp.net webforms asp.net-4.5

3
推荐指数
1
解决办法
3849
查看次数

数据库"master"中的CREATE DATABASE权限被拒绝 - 使用Web Deploy,EF Code First,Visual Studio

Visual Studio 2012 Express,EF5,Code First Migrations,Web Publish.

我正在使用Visual Studio 2012中的Web Deploy从Windows 8笔记本电脑进行Web发布到Windows Server 2008 R2 Web服务器.

文件上传得很好.但我收到此错误:数据库'master'中的CREATE DATABASE权限被拒绝

当Code首次尝试创建数据库时.

Web发布向导使用Windows用户登录 - 该用户对master数据库具有db_owner权限.

确切地说,我需要做什么才能授予CREATE DATABASE权限?(或者看看哪个用户试图这样做 - 错误由于某种原因没有报告?!).

谢谢.

sql-server asp.net sql-server-2008 webdeploy visual-studio-2012

2
推荐指数
1
解决办法
1万
查看次数

ASP.NET MVC 4 - 如何在编辑和保存数据时使用viewmodel

mvc 4使用sql server 2008,代码优先,ef5

我有一个与视图关联的ViewModel.

作为起点,我正在修改VS创建的脚手架.

我可以填写表格.

当用户单击"保存"时 - 这是脚手架中的代码:

 [HttpPost]
 public ActionResult Edit(Place place)
 {
 if (ModelState.IsValid)
    {
       db.Entry(place).State = EntityState.Modified;
       db.SaveChanges();
       return RedirectToAction("Index");
    }
 return View(place);
Run Code Online (Sandbox Code Playgroud)

地方是一个模型.我需要将viewmodel(包括地点)传递给它.

如何使用EF将viewmodel保存在数据库中?我是否必须先将其拆分为模型?

当我尝试时,我收到此错误:

Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. Refresh ObjectStateManager entries.
Run Code Online (Sandbox Code Playgroud)

当我调试它时,似乎PlaceID(来自模型)从传递回控制器httpPost Edit控制器的模型中丢失 - 也许这是错误的来源?

有没有在线最佳实践的例子 - 我找不到任何东西.

谢谢.

asp.net asp.net-mvc entity-framework asp.net-mvc-4 entity-framework-5

2
推荐指数
1
解决办法
3182
查看次数

复合C1 - Blog模块中的语言/本地化

我已将第二种语言French添加到Composite C1站点(系统/语言/添加语言).

当我选择语言时,它适用于内容页面(右下角).

但是 - 博客没有这个选项.如何在博客文章中添加语言?

c1-cms

2
推荐指数
1
解决办法
195
查看次数

.net 8 中的服务器端 Blazor 组件,@onclick 事件未触发

在 .net 7 中的 Blazor 服务器中,我可以在 Page.blazor 中执行此操作:

@信息

<button class="btn btn-primary mt-2 btn-block" @onclick="SendMessage">发送消息

@code { 公共字符串消息 { 获取;放; }

private async Task SendMessage()
{
    message = "Hello";
}
Run Code Online (Sandbox Code Playgroud)

}

当您单击该按钮时,它会在页面上输出“Hello”。

但是,在 .net 8 中,在服务器端 Page.blazor 中的“Blazor Web 应用程序”(自动、服务器与 Web Assembly 混合)中,此按钮不起作用。

EditForm 中的按钮确实可以工作,但我不想使用它,我只想单击按钮来触发事件。

为什么这在 .net 8 中不起作用?我该如何做到这一点?

谢谢

asp.net-core blazor blazor-server-side .net-8.0 blazor-auto

2
推荐指数
1
解决办法
1796
查看次数

CSVHelper版本2,.QuoteAllFields属性消失了,取而代之的是什么?

我一直在使用CSV Helper,我设置了这个属性:

sv.Configuration.QuoteAllFields = true;
Run Code Online (Sandbox Code Playgroud)

在所有字段周围放置引号.但是,在版本2中,此属性已消失.有同等的吗?如果不是我们如何继续在所有领域引用报价?

我在谷歌或有关此文档的文档中都找不到任何内容.

c# csvhelper

1
推荐指数
1
解决办法
833
查看次数

实体框架5,MVC 4,代码优先 - 在类中保持列表<string>

我的解决方案应该适用于:ASP.NET MVC 4,EF5,Code First,Visual Studio 2012 Express,SQL Server 2012 Express.

我需要用place对象存储许多标签.在另一个问题中,有人建议我使用List来实现这个目的:

asp.net MVC 4,标记地点 - 最佳实践(例如酒吧,商店,餐厅)

public List<String> Tags {get;set;}
Run Code Online (Sandbox Code Playgroud)

如果我只是添加它根本不会在数据库中持久化.我怎么能坚持下去?

谢谢.

更新

这需要多对多的关系 - 例如,一个地方可能被标记为Cafe和Cycle Shop.有许多咖啡馆和自行车商店.

   public class Place
   {
      public Place()
      {
         // Set default value of dateAdded to now
         DateAdded = DateTime.Now;
      }

      [ScaffoldColumn(false)]
      public virtual int PlaceID { get; set; }

      public virtual List<Tag> Tags { get; set; }

      [ScaffoldColumn(false)]
      [DisplayName("Date Added")]
      public virtual DateTime DateAdded { get; set; }

      [Required(ErrorMessage = "Place Name is …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc entity-framework asp.net-mvc-4 asp.net-4.5

0
推荐指数
1
解决办法
6069
查看次数

如何知道 MERGE "Upsert" 是否插入或更新?

我是 MERGE 的新手 - 我有一个有效的 MERGE 语句:

merge customers with (holdlock) as c
using (select @id as id) as new_id
  on c.contactid = new_id.id
when matched then
  update set ContactID = 1, firstname = CAST(SYSDATETIME() AS VARCHAR(100))
when not matched then
  insert(ContactID) values(1), firstName = 'b';
Run Code Online (Sandbox Code Playgroud)

(SQL 并不重要——这是为了测试目的)。

我已经用谷歌搜索了这个,但找不到答案,我不清楚为什么没有返回“更新”。

我的问题是 - 我怎样才能返回指示是否发生了插入或更新的内容?

t-sql sql-server

0
推荐指数
1
解决办法
1023
查看次数