首页 > 解决方案 > 如何在从不同网络登录站点帐户时修复错误

问题描述

我已经编写了代码,可以从中检索数据ClientID并将其修改为Int32. 调试时没有错误。我已将该站点部署到网络。通过服务器所在的同一 LAN 访问时,它按预期工作。但是,当其他人(此网络之外)尝试登录站点时会引发错误。

错误是:

“/”应用程序中的服务器错误

异常详细信息:System.FormatException:输入字符串的格式不正确。

PS:该网站是可访问的。他们能够注册、更改密码并从主页重定向到不同的页面。但是,当配置文件加载时,他们会看到错误。

我尝试再次调试,检查db(mySQL)连接,完全刷新IIS服务器管理器,检查权限,尝试在cs代码中更改“Int to Var”,删除“value =”和“.text ()" 从错误行中重新部署站点,并在每次调试时进行修改。

function getdays(date){
  var days = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
  var d = new Date(date);
  var dayName = days[d.getDay()];
  var selecteddays = value = $('#<%=lblweekoff.ClientID%>').text();
  var selectedSplittedDays = selecteddays.split(',');
} 

C#

string MyConString = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
                var dayColumns = new[] { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
var selectedDayColumn = dayColumns[(int)nextDate.DayOfWeek];
var sp = (dr["p"].ToString());
Int sp1 = Convert.ToInt32(sp);
MySqlConnection connection = new MySqlConnection(MyConString);

代码应该能够接受数字并使用给定数字的计算加载页面,并将除以“,”除以存储在数据库中的天数分开。

它应该允许用户登录并显示页面而不会出现任何错误。由于它在同一个 LAN 中按预期运行,我认为代码没有严重问题。但是,所有建议都将受到高度赞赏。

更新:为了进一步解释,有 2 组预定义用户,假设 A 组有 100 个用户,B 组有 100 个用户。当我将自己作为用户放入集合 A 时,我可以登录到该站点。当我在 B 组时,我无法登录,并且出现同样的错误。

我删除了整个集合 B 并添加了插入的更新细节。它仍然对集合 B 中的所有用户构成相同的错误。但是,集合 A 登录和访问功能没有任何问题。

我认为错误在于$('#<%=lblweekoff.ClientID%>'). 进一步具有所有ClientID功能。我试图评论错误行并尝试在另一个.ClientID函数收到错误的地方执行。那么,问题出在与数据库交互的代码上吗?如果是这种情况,他们可以注册或更改链接到同一个数据库的密码。

标签: c#mysqlasp.netiisclientid

解决方案


我得到了它!

输入是 int 形式。

Int sp1 = Convert.ToInt32(sp);

但是,输入数据是浮点数(十进制数)。

更正为:

float sp1= math.round(Convert.ToInt32(sp));

它确实奏效了。谢谢大家的建议和帮助。


推荐阅读