没有方法'polygonArea'的重载采用'0'参数如何解决我在下面的程序中得到这个错误 [英] No overload for method 'polygonArea' takes '0' arguments how to solve am getting this erroe for below program

查看:56
本文介绍了没有方法'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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆