在启动时以编程方式更改WebForm应用程序的Web.config

时间:2019-02-21 13:30:49

标签: c# asp.net authentication webforms web-config

我正在开发一种应用程序,它允许两种类型的登录,一种是通过Web表单的内部登录,另一种是通过Identity provider的外部登录。 根据功能切换,我要做的是决定在启动时我的应用程序应该使用两种方法中的哪一种。

我遇到的问题是,如果我在Web.config中设置以下内容,则一切正常:

t = np.linspace(0,100,8000)

a = np.array([0, 5, 6, 12, 1.254, ..., 0.145])     # shape (8000, )
b = np.array([1.45, 5.9125, 1.367, ..., 3.1458])
c = np.array([0.124, 0.258, 0.369, ..., 0.147])
d = np.array([7.145, 5.123, 6.321, ..., 0.125])

def system(k,t):
    vcx_i = k[0]
    vcy_i = k[1]
    psi_i = k[2]
    wz_i = k[3]

    vcx_i_dot = a*np.cos(psi_i)-b*np.sin(psi_i)
    vcy_i_dot = b*np.cos(psi_i)+a*np.sin(psi_i)
    psi_i_dot = wz_i
    wz_i_dot = c*vcx_i-a*np.sin(psi_i)-d*np.sin(psi_i)-b*np.cos(psi_i)

    return [vcx_i_dot, vcy_i_dot, psi_i_dot wz_i_dot]

k0 = [0.1257, 0, 0, 0]

k = odeint(system, k0, t)

vcx_i = k[:,0]
vcy_i = k[:,1]
psi_i = k[:,2]
wz_i = k[:,3]

psi_i = [system(t_i, k_i)[2] for k_i, t_i in zip(k,t)]
wz_i = [system(t_i, k_i)[3] for k_i, t_i in zip(k,t)]

相反,如果我在Web.config中摆脱了这一点,并尝试使用以下代码在“启动”中进行设置,则它将不起作用:

<authentication mode="Forms">
      <forms loginUrl="Login.aspx" defaultUrl="Default.aspx" timeout="60" name="UserName" enableCrossAppRedirects="true" />
</authentication>

“不起作用”的意思是,当我尝试登录时,它会给我401,这意味着没有理由,但是它应该与我直接在Web.config中进行设置时的行为完全一样。

0 个答案:

没有答案