我试图在登录页面上实施重新计算。 但每次遇到代码时,都会发生空引用异常。 我使用asp.net和默认的登录模板,它有自己的Web.Config(虽然不知道为什么)
是否需要进行设置?以下是我的代码。希望尽快得到回复。
aspx文件
<%@ Page Title="Log In" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"CodeBehind="Login.aspx.cs" Inherits="Penerangan.Emedia2u.Web.Account.Login" %>
<%@ Register TagPrefix="recaptcha" Namespace="Recaptcha" Assembly="Recaptcha" %>
<asp:Label Visible="false" ID="lblResult" runat="server" />
<recaptcha:RecaptchaControl ID="recaptcha" runat="server" />
.cs文件
recaptcha.PublicKey = System.Configuration.ConfigurationManager.AppSettings["reCAPTCHAPublicKey"].ToString();
recaptcha.PrivateKey = System.Configuration.ConfigurationManager.AppSettings["reCAPTCHAPrivateKey"].ToString();
web.config文件
<appSettings>
<add key="reCAPTCHAPublicKey" value="fromgooglecaptchakey"/>
<add key="reCAPTCHAPrivateKey" value="fromgooglecaptchakey"/>
</appSettings>
答案 0 :(得分:0)
尝试这个,它适用于我的代码:
using System.Web.Configuration;
/* ... */
WebConfigurationManager.AppSettings["reCAPTCHAPublicKey"];
您需要确保在asp.net项目的后端某处打开Web配置。有关信息,请参阅MSDN文章: https://msdn.microsoft.com/en-us/library/610xe886%28v=vs.140%29.aspx
System.Configuration.Configuration rootWebConfig1 =
System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(null);