В настоящее время я создаю HTML-форму, которая принимает вводимые пользователем данные, создает из них тело сообщения и отправляет его мне по электронной почте.Поскольку пользователю нужно заполнить 10 различных полей ввода, я бы хотел объединить строки в одну строку - messageBody.Когда я определяю строки с помощью {get;задавать;} в модели они должны быть открытыми, чтобы я мог получить к ним доступ в форме в представлении.Однако, когда я пытаюсь объединить все строки в модели, я не могу, потому что «Инициализатор поля не может ссылаться на нестатическое поле».Я попытался изменить строки на «общедоступную статическую строку», и это позволило мне ссылаться на строки в модели, но он больше не мог ссылаться на строки в представлении, потому что «нельзя получить доступ с помощью ссылки на экземпляр; вместо этого уточните его с помощью имени типа«.Я переключил их обратно на «открытую строку» и подумал, что, возможно, я мог бы просто объединить их в Razor в самом представлении, но когда я попробую это, он не распознает строки, потому что «имя« myString »не существует втекущий контекст. "
Я отчасти заблудился от того, что попробовать дальше.Насколько я понимаю (что не так уж и хорошо), мои строки ДОЛЖНЫ быть открытыми, чтобы получить к ним доступ из представления, но они также ДОЛЖНЫ быть статичными, чтобы я мог объединить их в одну строку?Это не имеет особого смысла для меня, я действительно надеюсь, что я просто что-то напортачу.
Моя модель выглядит так:
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;
namespace CuttingEdgeWebsite2._0.Models
{
public class ServiceRequest
{
[Key]
public int serviceRequestID { get; set; }
[Required]
public string serviceRequestName { get; set; }
[Required]
public string serviceRequestEmail { get; set; }
public string serviceRequestCompany { get; set; }
public string serviceRequestAddress { get; set; }
[Required]
public string serviceType { get; set; }
public string serviceRequestCity { get; set; }
public string serviceRequestState { get; set; }
public string serviceRequestZip { get; set; }
[Required]
public string serviceRequestNumber { get; set; }
public string serviceRequestComments { get; set; }
}
}
Мой вид выглядит следующим образом:
@model MyWebsite.Models.ServiceRequest
@using (Html.BeginForm("Email", "ServiceRequestsController", FormMethod.Post))
{
<div class="servicesReq">
<div class="serviceReqForm">
<div class="col-left">
<label>
<span class="required">* </span><span>Name:</span><br />
@Html.TextBoxFor(model => model.serviceRequestName)
</label><br />
<label>
<span class="required">* </span><span>Email:</span><br />
@Html.TextBoxFor(model => model.serviceRequestEmail)
</label><br />
<label>
<span>Company:</span><br />
@Html.TextBoxFor(model => model.serviceRequestCompany)
</label><br />
<label>
<span>Address:</span><br />
@Html.TextBoxFor(model => model.serviceRequestAddress)
</label><br /><br />
</div>
<div class="serviceTypeGrid">
<span class="required">* </span><span>Please choose what type of servicing you require:</span><br /><br />
</div>
<div class="col-left2">
<label class="serviceType">
<input type="radio" name="serviceType" value="Electrical" /> Electrical<br />
<input type="radio" name="serviceType" value="Lighting" /> Lighting<br />
<input type="radio" name="serviceType" value="Energy" /> Energy<br />
<input type="radio" name="serviceType" value="Multiple" /> Multiple<br />
</label><br /><br />
</div>
<div class="col-right">
<label>
<span>City:</span><br />
@Html.TextBoxFor(model => model.serviceRequestCity)
</label><br />
<label>
<span>State:</span><br />
@Html.TextBoxFor(model => model.serviceRequestState)
</label><br />
<label>
<span>Zip Code:</span><br />
@Html.TextBoxFor(model => model.serviceRequestZip)
</label><br />
<label>
<span class="required">* </span><span>Phone Number:</span><br />
@Html.TextBoxFor(model => model.serviceRequestNumber)
</label><br />
</div>
<label class="commentText">
<span>Comments:</span><br />
@Html.TextAreaFor(model => model.serviceRequestComments, new { @class = "servReqComment" })
</label>
<div class="formSubmitButton">
<input type="submit" value="Submit" /><br />
<br />
</div>
</div>
</div>
}
Любые идеи о том, где / как объединить строки в этой ситуации, будут высоко оценены.