0

Web アプリケーションのパブリック クラス内でパブリック関数を呼び出そうとしていますが、クラスに問題なくアクセスでき、関数がパブリックとしてマークされているにもかかわらず、何らかの理由で関数にアクセスできません。を呼び出すとFileUploader、与えられるオプションは equals と referenceequals だけです。私が見過ごしている愚かなことは何ですか?このクラスは、アプリ内の Classes という二次プロジェクトにあることに注意してください。含まれているプロジェクトの異なるクラスにアクセスするのに問題はありませんFileUploader

using System;
using Microsoft.WindowsAzure.Storage;
using Microsoft.WindowsAzure.Storage.Auth;
using Microsoft.WindowsAzure.Storage.Blob;
using Microsoft.WindowsAzure;
using System.IO;
using System.Configuration;
using FFInfo.Classes;

namespace FFInfo
{
    public partial class FUTest : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            if (fuFile.HasFile)
            {

            }
        }
    }
}

FileUploaders.cs

    using FFInfo.DAL;
using FFInfo.DAL.Tables;
using Microsoft.WindowsAzure.Storage;
using Microsoft.WindowsAzure.Storage.Blob;
using System;
using System.Web;

namespace FFInfo.Classes
{
    public class FileUploader
    {
        public Int64 UploadSiteImage(string ConnectionString, string ContainerName, string FilePath, HttpPostedFile UploadedFile)
        {
            CloudStorageAccount SiteImages = CloudStorageAccount.Parse(ConnectionString);
            CloudBlobClient SiteImagesBlob = SiteImages.CreateCloudBlobClient();
            CloudBlobContainer SiteImageContainer = SiteImagesBlob.GetContainerReference(ContainerName);
            SiteImageContainer.CreateIfNotExists();
            CloudBlockBlob Image = SiteImageContainer.GetBlockBlobReference(FilePath + UploadedFile.FileName);

            using (UploadedFile.InputStream)
            {
                Image.UploadFromStream(UploadedFile.InputStream);
            }

            using (var db = new Compleate())
            {
                File NewFile = new File()
                {
                    ContainerName = ContainerName,
                    FilePath = FilePath,
                    FileName = UploadedFile.FileName,
                    ContentType = UploadedFile.ContentType
                };

                db.Files.Add(NewFile);
                db.SaveChanges();
                return NewFile.FileID;
            }
        }
    }
}
4

2 に答える 2

1

UploadSiteImageメソッドが静的であることを意味していたのでしょうか。

于 2013-03-12T23:06:42.820 に答える
0

(new FileUploader()) を試してください。<-- ここでインテリセンスを取得します。

しかし、ええ、おそらくメソッドを public static にしたいでしょう

于 2013-03-12T23:18:42.320 に答える