public static string searchEmail(string email)
{
connectionString = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;
SqlConnection conn = new SqlConnection(connectionString);
{
conn.Open();
bool exists = false;
using (SqlCommand comm = new SqlCommand("select count(*) from Member where email = @email", conn))
{
comm.Parameters.AddWithValue("@email", email);
exists = (int)comm.ExecuteScalar() > 0;
}
if (exists)
{
return "Password has been reset, please check your email box!";
}
return null;
}
}
这是我现在的观点,出于某种原因,当我进入我的页面注册用户时,“确认密码”文本框中充满了一堆星号。我无法想象星号表示一个值,因为我的模型中还没有添加任何内容。有人能告诉我如何让这个领域变得空洞吗?
答案 0 :(得分:4)
这是您的浏览器为您填写保存的密码。如果要禁用该功能,则需要将autocomplete="off"
应用于输入:
@Html.Password("ConfirmPassword", new { maxlength = "20", autocomplete = "off })
答案 1 :(得分:0)
那是因为Html.Password
将第二个参数视为字段值。因此,您的代码@Html.Password("ConfirmPassword", new { maxlength = "20" })
正在将'{ maxlength = "20" }'
作为初始值传递给您的字段。
这是您的代码生成的HTML标记...注意值。
<input id="ConfirmPassword"
name="ConfirmPassword"
type="password"
value="{ maxlength = 20 }">
如果您在Chrome中更改HTML(使用开发人员工具),并删除type="password"
,则您会在字段中以明文形式查看值。
我建议使用Html.PasswordFor
,这是您为其他密码字段所做的。它不需要为属性名称指定字符串。