我正在修改我以前在代码隐藏中使用带有VB的ASP.net构建的网站到使用VB的MVC,以便它对不同的屏幕尺寸和设备类型更具响应性。
到目前为止,我已经能够复制六个页面以及Site.Master文件。现在我将注意力转向联系页面,该页面在asp.net中从表单中获取数据,验证它是否完成和数据类型合规性,然后将其传递给使用它生成电子邮件的代码隐藏。
我已经做了很多阅读,建议使用模型,但我发现的所有示例都使用该模型来使用LINQ填充或查询数据库。
如果没有数据库,我怎么能这样做?
答案 0 :(得分:0)
MVC中的M代表Model,而不是Mdatabase。您可以使用任何您想要的模型。大多数应用程序使用数据库,大多数.NET应用程序使用EF来访问数据库(或者至少微软希望这样做)但你可以使用你想要的任何东西。
答案 1 :(得分:0)
建议使用数据库引擎作为永久存储,但基本上您可以为联系页面创建模型类,而不涉及这样的数据库:
public class Contact
{
[Required]
public String Name { get; set; }
[Required]
public String EmailAddress { get; set; }
}
在将模型类包装到集合(例如List)之后,您可以使用LINQ / lambda表达式,例如:
var list = new List<Contact>();
list.Add(new Contact { ... }); // adding items to the list
// Lambda syntax
var name = list.Select(x => x.Name); // returns a value from the list
// LINQ syntax
var email = (from item in list
select item.EmailAddress);
然后,您可以将代码隐藏逻辑转换为控制器操作方法,每个用于GET和POST请求ActionResult
。之后,数据提交后Redirect
,RedirectToAction
或简称return View()
可用于页面处理。
关于使用不同屏幕尺寸和设备类型的响应式页面设计,MVC本身并非设计为默认显示响应式布局。你需要改变一些HTML&amp;与CSS相关的属性,类似于此处的问题:
How to make an MVC web application adjust to automatically fit different screen sizes
注意:由于您的问题并未包含任何代码,因此提供的代码只是示例所示。