我不是.NET开发人员,所以我需要你的帮助。
我继承了ASP.net项目。该项目是一个跟踪现金流量交易的系统。因此,它在SQLSERVER中有5个表,用于跟踪用户,项目,银行,交易和受益人。用户可以添加项目,银行,交易和受益人(客户)。 该软件的当前状态是有效的,并且已经使用了大约2年。但是需要进行更改。 我已经设法在我的本地计算机上运行该软件,作为了解BAM所有层次的第一步 - 银行账户管理:
SQLSERVER后端
BAM.dll形式的控制器层,或至少是我的理解。我在BAM live服务器上发现了一堆.cs文件,但它们都是自动生成的。
1)如果所有C#文件都是自动生成的,我不明白BAM.dll是如何存在的。 Visual Studio中是否有一个从aspx页面生成C#的功能?或者它是否意味着编译BAM dll需要原始的C#,那么应该继续使用它们?从cs文件中可以看到,名称不是人为生成的
每个cs文件都有这个
//
<auto-generated>
// This code was generated by a tool. // Runtime Version:2.0.50727.3603 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. //</auto-generated>
&#13;
2)如果我想编译和处理这个项目,我该如何处理?我在visual studio中打开一个web asp项目并导入aspx文件。我知道aspx文件使用的是@Page指令,它指定了MasterPageFile,CodeBehind和Inherits。 例如AddTransaction.aspx
<%@ Page Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="AddTransaction.aspx.cs" Inherits="BAM.AddTransaction" %>
&#13;
我似乎没有弄清楚,例如,dll如何在Web.Config中使用数据库连接字符串。我运行了项目,BAM.dll使用了很好的连接字符串,但是在我的脑海中对于如何在项目中合并/编译dll存在很大的困惑,可能是因为我找不到源代码?!
添加name =&#34; LocalSqlServer&#34; connectionString =&#34; Data Source = Lenovo-PC; Initial Catalog = BAM; User Id = bam; Password = secret;&#34;
3)这个项目的文件/文件夹结构是什么样的?
BAM.dll显然有很好的东西,但不是我找到的那些cs#文件。例如,如果您输入错误的用户名/密码,则会显示“无效的用户名或密码”。没有其他文件具有该字符串,这使得我相信那些cs#在调试/编译期间是一些临时文件。
答案 0 :(得分:1)
我认为您使用的是WebSite的编译版本,所以您需要获取源代码,我生成一个示例项目,树文件列表应如下所示:
C:.
│ About.aspx
│ About.aspx.cs
│ About.aspx.designer.cs
│ Contact.aspx
│ Contact.aspx.cs
│ Contact.aspx.designer.cs
│ Default.aspx
│ Default.aspx.cs
│ Default.aspx.designer.cs
│ favicon.ico
│ Global.asax
│ Global.asax.cs
│ packages.config
│ Site.Master
│ Site.Master.cs
│ Site.Master.designer.cs
│ Site.Mobile.Master
│ Site.Mobile.Master.cs
│ Site.Mobile.Master.designer.cs
│ ViewSwitcher.ascx
│ ViewSwitcher.ascx.cs
│ ViewSwitcher.ascx.designer.cs
│ Web.config
│ Web.Debug.config
│ Web.Release.config
│ WebApplication1.csproj
│ WebApplication1.csproj.user
│
├───Account
│ Login.aspx
│ Login.aspx.cs
│...
├───App_Data
├───App_Start
│ AuthConfig.cs
│ RouteConfig.cs
│
├───bin│
├───Content
│ │ Site.css
│ │
│ └───themes
│ └───base
│ │ jquery-ui.css
│ │...
│ ├───images
│ │ ui-bg_flat_0_aaaaaa_40x100.png
│ │ ui-bg_flat_75_ffffff_40x100.png
│ │...
│ └───minified
│ │ jquery-ui.min.css
│ │ jquery.ui.accordion.min.css
│ │...
│ └───images
│ ui-bg_flat_0_aaaaaa_40x100.png
│ ui-bg_flat_75_ffffff_40x100.png
│ ui-bg_glass_55_fbf9ee_1x400.png
│...
├───Images
│ accent.png
│ bullet.png
│...
├───obj
├───Properties
│ AssemblyInfo.cs
│
└───Scripts
jquery-1.8.2.intellisense.js
jquery-1.8.2.js
获得正确的代码后:
string connection = ConfigurationManager.ConnectionStrings["LocalSqlServer"].ConnectionString;
它应该像我已经提到的结构
如果您想更新或添加功能,您需要查看有关ASP.Net的一些教程并了解其工作原理
希望这个帮助
答案 1 :(得分:1)
我想要的只是确认我错过了C#文件。我认为.NET中可能有一个工具可以直接从aspx文件中生成控制器!!
很公平,我得到了原始开发人员的帮助,他向我提供了整个csproject和相关的c#文件!!