アプリケーションを Windows フォームから ASP.net に移植する必要があります
別のフォームを使用して販売のデータをフォームに追加しようとするまで、すべて正常に機能します。Windows フォームでは問題なく動作しますが、ASP で試してみると、「Null Reference Exception was unhandeled by user code というメッセージが表示されます。
これは、メイン フォームから [新しい販売を追加] にアクセスしようとするとポップアップします。
私の「Add Sale Form」のコードは次のとおりです。
public partial class AddSaleForm : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
public Sale GetData()
{
return new Sale(IdTextbox.Text, DateTextbox.Text, LocationTextBox.Text, Convert.ToDouble(PitchCostTextbox.Text), Convert.ToInt32(NumPitchesTextbox.Text), CharityCheckbox.Checked, CharityNameTextbox.Text, CateringCheckBox.Checked);
}
何がうまくいかず、どこで修正できますか?
コンストラクタは次のとおりです。
namespace AntiqueSale
{
[Serializable]
public class Sale : IComparable<Sale>
{
private String saleId;
public String SaleId
{
get { return saleId; }
set { saleId = value; }
}
private String saleDate;
private String location;
private double pitchCost;
private int numPitches;
private bool charity;
public bool Charity
{
get { return charity; }
set { charity = value; }
}
private String charityName;
private bool catering;
public Sale(String saleId,
String saleDate,
String location,
double pitchCost,
int numPitches,
bool charity,
String charityName,
bool catering)
{
this.saleId = saleId;
this.saleDate = saleDate;
this.location = location;
this.pitchCost = pitchCost;
this.numPitches = numPitches;
this.charity = charity;
this.charityName = charityName;
this.catering = catering;
}
public override string ToString()
{
String str;
String charityString;
String cateringString;
String charityNameString;
if (charity)
{
charityString = "Yes";
charityNameString = charityName;
}
else
{
charityString = "No";
charityNameString = "N/A";
}
if (catering)
{
cateringString = "Yes";
}
else
{
cateringString = "No";
}
str = String.Format("{0}: {1}: {2}: {3}: {4}: {5}: {6}: {7}",
saleId,
saleDate,
location,
pitchCost,
numPitches,
charityString,
charityNameString,
cateringString);
return str;
}
public int CompareTo(Sale sale)
{
return this.SaleId.CompareTo(sale.SaleId);
}
}
コンストラクターは私が設計したものではありません。これは、私が受け取った最初のコードであり、asp に変更する必要がありました。