没有方法'polygonArea'的重载采用'0'参数如何解决我在下面的程序中得到这个错误 [英] No overload for method 'polygonArea' takes '0' arguments how to solve am getting this erroe for below program
本文介绍了没有方法'polygonArea'的重载采用'0'参数如何解决我在下面的程序中得到这个错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
使用系统;
使用 System.Configuration;
使用 System.Data;
使用 System.Linq;
使用 System.Collections;
使用 System .Collections.Generic;
使用 System.Web.UI.WebControls;
使用 System.Web.UI.WebControls.WebParts;
使用 System.Xml.Linq;
使用 System.IO;
使用 System.Data.OleDb;
使用 System.ComponentModel;
public partial class _Default:System.Web.UI.Page
{
class Point { double X,Y; }
DataTable dt = new DataTable();
int X,Y;
受保护 void Page_Load( object sender,EventArgs e)
{
}
protected void btnSubmit_Click( object sender,EventArgs e)
{
string connectionString = ;
if (FileUpload1.HasFile)
{
string fileName = Path.GetFileName(FileUpload1.PostedFile.FileName);
string fileExtension = Path.GetExtension(FileUpload1.PostedFile.FileName);
string fileLocation = Server.MapPath( 〜/ App_Data / + fileName);
FileUpload1.SaveAs(fileLocation);
if (fileExtension == 。xls )
{
connectionString = Provider = Microsoft.Jet.OLEDB。 4.0;数据源= + fileLocation + ;扩展属性= \Excel 8.0; HDR =是; IMEX = 2\ 跨度>;
}
else if (fileExtension == 。xlsx)
{
connectionString = Provider = Microsoft.ACE.OLEDB.12.0; Data Source = + fileLocation + ;扩展属性= \Excel 12.0; HDR =是; IMEX = 2 \;
}
OleDbConnection con = new OleDbConnection(connectionString);
OleDbCommand cmd = new OleDbCommand();
ArrayList List = new ArrayList();
cmd.CommandType = System.Data.CommandType.Text;
cmd.Connection = con;
OleDbDataAdapter dAdapter = new OleDbDataAdapter(cmd);
DataTable dtExcelRecords = new DataTable();
con.Open();
DataTable dtExcelSheetName = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null );
string getExcelSheetName = dtExcelSheetName.Rows [ 0 ] [ Table_Name]。ToString();
cmd.CommandText = SELECT * FROM [ + getExcelSheetName + ];
dAdapter.SelectCommand = cmd;
dAdapter.Fill(dtExcelRecords);
if (会话[ dtInSession]!= null )
{
dt =(DataTable)Session [ dtInSession];
}
for ( int i = 0 ; i < dtExcelRecords.Rows.Count; i ++)
{
// 如果你想得到字符串
DataRow thisRow =(DataRow)dtExcelRecords.Rows [i];
X = Convert.ToInt32(thisRow [ X]);
Y = Convert.ToInt32(thisRow [ Y]);
// double Length = Convert.ToDouble(Y);
// double X1 = Convert.ToDouble(X);
DataRow dr = dt.NewRow() ;
polygonArea();
}
}
}
private Double polygonArea( int [] X, int [] Y)
{
Double area = 0 。 0 跨度>;
int j = X.Length - 1 ;
for ( int i = 0 ; i < X.Length; i ++)
{
area = area +(X [j] + X [i] *( Y [j]的-Y [I]));
j = i;
}
area = area / 2 ;
if (area < 0 )
area = area * -1;
返回区域;
}
}
解决方案
我强烈建议您参考这些链接
C#中的功能 [ ^ ]
< a href =http://msdn.microsoft.com/en-us/library/ms173114.aspx>方法(C#编程指南) [ ^ ]
问候..
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Collections;
using System .Collections.Generic ;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.IO;
using System.Data.OleDb;
using System.ComponentModel;
public partial class _Default : System.Web.UI.Page
{
class Point { double X, Y; }
DataTable dt = new DataTable();
int X, Y;
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
string connectionString = "";
if (FileUpload1.HasFile)
{
string fileName = Path.GetFileName(FileUpload1.PostedFile.FileName);
string fileExtension = Path.GetExtension(FileUpload1.PostedFile.FileName);
string fileLocation = Server.MapPath("~/App_Data/" + fileName);
FileUpload1.SaveAs(fileLocation);
if (fileExtension == ".xls")
{
connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileLocation + ";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=2\"";
}
else if (fileExtension == ".xlsx")
{
connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileLocation + ";Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=2\"";
}
OleDbConnection con = new OleDbConnection(connectionString);
OleDbCommand cmd = new OleDbCommand();
ArrayList List = new ArrayList();
cmd.CommandType = System.Data.CommandType.Text;
cmd.Connection = con;
OleDbDataAdapter dAdapter = new OleDbDataAdapter(cmd);
DataTable dtExcelRecords = new DataTable();
con.Open();
DataTable dtExcelSheetName = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
string getExcelSheetName = dtExcelSheetName.Rows[0]["Table_Name"].ToString();
cmd.CommandText = "SELECT * FROM [" + getExcelSheetName + "]";
dAdapter.SelectCommand = cmd;
dAdapter.Fill(dtExcelRecords);
if (Session["dtInSession"] != null)
{
dt = (DataTable)Session["dtInSession"];
}
for (int i = 0; i < dtExcelRecords.Rows.Count; i++)
{
//if you want to get the string
DataRow thisRow = (DataRow)dtExcelRecords.Rows[i];
X = Convert.ToInt32(thisRow["X"]);
Y = Convert.ToInt32(thisRow["Y"]);
//double Length = Convert.ToDouble(Y);
//double X1 = Convert.ToDouble(X);
DataRow dr = dt.NewRow();
polygonArea();
}
}
}
private Double polygonArea(int[] X,int[] Y)
{
Double area = 0.0;
int j = X.Length - 1;
for (int i=0; i < X.Length; i++)
{
area=area+(X[j]+X[i]*(Y[j]-Y[i]));
j=i;
}
area =area/ 2;
if (area < 0)
area = area * -1;
return area;
}
}
解决方案
I strongly recommend you to refer these links
Functions in C#[^]
Methods (C# Programming Guide)[^]
Regards..
这篇关于没有方法'polygonArea'的重载采用'0'参数如何解决我在下面的程序中得到这个错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文