Я создал dll в C # (framework 3.5) и объявил параметризованную функцию в эту dll. Я успешно скомпилировал dll. После этого я создал классическую ASP-страницу и хочу вызвать на этой странице параметризованную функцию, которая генерирует следующую ошибку.
Microsoft VBScript runtime (0x800A01C2)
Wrong number of arguments or invalid property assignment: 'GetData'
Я прилагаю код ниже
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
using System.Text.RegularExpressions;
namespace SayHello
{
[ComVisible(true)]
public class SayHello : IMyStorage
{
[ComVisible(true)]
public string GetData([In, MarshalAs(UnmanagedType.BStr)] string Name)
{
return "hello " + Name;
}
#region IMyStorage Members
[ComVisible(true)]
public void GetData(string name, out string helloName)
{
helloName = "hello " + name;
}
#endregion
}
[ComImport]
[Guid("73EB4AF8-BE9C-4b49-B3A4-24F4FF657B26")]
public interface IMyStorage
{
[DispId(1)]
void GetData([In, MarshalAs(UnmanagedType.BStr)] String name,
[Out, MarshalAs(UnmanagedType.BStr)] out String helloName);
}
}
Теперь я вставляю код asp
Dim obj
Set obj = Server.CreateObject("SayHello.SayHello")
' Set obj = Server.CreateObject("SayHello.dll")
' Set obj= obj.Load("SayHello.dll")
inputStr = "myString"
GetObj = obj.GetData(inputStr)
SET Obj = NOTHING
Response.Write (GetObj)
Пожалуйста, помогите мне.