2017-01-19 9 views
-1

У меня есть вопрос в .net Website.Отладка aspx.cs через веб-страницу

Примечание: Я новичок в .net

Я сделал сайт и проверил его в моем локальном IIS, и его работает отлично в местном. Но когда я развернуть этот сайт на сервере, то я не могу войти в

Мой поток кода является: 1. Создано Default.aspx с входа и пароля, то я вношу его как следовать

Dafault.aspx

<form id="form1" method="post" enctype="multipart/form-data" runat="server" name="loginForm" ng-controller="loginDetail as loginCtrl"> 
    <!-- For ID --> 
<input type="text" id="login_id" ng-model="login_id" class="form-control" name="login_id" placeholder="Enter Login ID" value="" required /> 
<!-- For Password --> 
<input type="password" id="login_pass" ng-model="login_pass" class="form-control" name="login_pass" placeholder="Enter Your Password" value="test123" required /> 
<input type="submit" value="Login" class="btn-success"/> 
</form> 

Теперь JS является

app.js

var app = angular.module("Admin",['ui.bootstrap']); 
app.controller('loginDetail', function ($scope, $http) { 
    this.loginToolTip = "Press this to \bLogin"; 
    $scope.init = function() { 
     document.getElementById('login_id').focus(); 
    }; 
    $scope.submitForm = function() { 
    }; 
}); 

и теперь код бэкенд в Default.aspx.cs как следовать

Dafault.aspx.cs

using System; 
using System.Collections.Generic; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Data; 
using System.Data.SqlClient; 
using System.IO; 
using Newtonsoft.Json; 

namespace Main 
{ 
    public partial class Default : System.Web.UI.Page 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 
      HttpContext.Current.Response.AddHeader("Cache-Control", "no-cache, no-store, must-revalidate"); 
      HttpContext.Current.Response.AddHeader("Pragma", "no-cache"); 
      HttpContext.Current.Response.AddHeader("Expires", "0"); 
      string loginid = Request.Form["login_id"]; 
      string loginpass = Request.Form["login_pass"]; 
      List<User> allUsers = new List<User>(); 

      if (loginid != null) 
      { 

       try 
       { 
        using (StreamReader r = new StreamReader(Server.MapPath("json/admins.json"))) 
        { 
         string json = r.ReadToEnd(); 
         allUsers = JsonConvert.DeserializeObject<List<User>>(json); 
        } 

        int i = 0; 
        while (i < allUsers.Count) 
        { 
         if (allUsers[i].Name.ToLower() == loginid.ToLower() && Base64Decode(allUsers[i].Password) == loginpass) 
         { 
          Session["User"] = loginid.ToLower(); 
          if(loginid.ToLower() == "admin") 
          { 
           Response.Redirect("AdminUser.aspx", false); 
          } 
          else 
          { 
           Response.Redirect("Admin.aspx", false); 
          } 
         } 
         i++; 
        } 

        if (i == allUsers.Count) 
        { 
         //Check NonSuccess. 
        } 
        Session["AllUsers"] = allUsers; 
       } 
       catch (System.Exception ex) 
       { 
        //Some issue 
       } 
      } 
     } 

     public static string Base64Decode(string base64EncodedData) 
     { 
      byte[] base64EncodedBytes =  System.Convert.FromBase64String(base64EncodedData); 
      return System.Text.Encoding.UTF8.GetString(base64EncodedBytes); 
     } 
    } 
} 


public class User 
{ 
    public string Name { get; set; } 
    public string Password { get; set; } 
} 

Я читаю из JSON.

Этот код работает нормально в локальной системе. Но не на сервере. Когда я нажимаю кнопку входа, страница должна перенаправляться на страницу Admin/AdminUser. но он просто обновляет страницу. Я также не могу отлаживать, на стороне сервера, так как нет Visual Studio. Также не удается найти точную проблему.

+0

любые ошибки в консоли веб-браузера? – MMK

+0

нет. потому что страница была обновлена ​​после нажатия кнопки «Отправить». :( – VarunJi

ответ

0

Если вы хотите отладить код. Вы можете записывать журналы после любой строки, где вы хотите отлаживать. Вы можете использовать этот метод:

public static void WriteLog(string LogStr) 
{ 
    try 
    { 
     string LogFilePath = Server.MapPath("Logs.txt"); 
     FileStream fs = new FileStream(LogFilePath, FileMode.Create | FileMode.Append); 
     StreamWriter sw = new StreamWriter(fs); 
     sw.WriteLine(DateTime.Now.ToShortDateString() + " | " + DateTime.Now.TimeOfDay + "=|" + LogStr); 
     sw.Close(); 
     fs.Close(); 
    } 
    catch (Exception e) 
    { 

    } 
} 

И называют это нравится:

WriteLog(json);

Plus также проверить web browser console.

+0

Будет ли это добавлять журнал в Консоль или в файл на сервере? – VarunJi

+0

@VarunJi в файле 'Logs.txt' на сервере. –

+0

@VarunJi убедитесь, что' Logs.txt' существует. –