我建立了一个工程:目录为
/工程001
目录结构是:
/工程001/MyClass001/      这个是自定义类的目录,这个类下有两个类,每个类下又有很多的函数。
/工程001/MyClass001/cla001.cs
/工程001/MyClass001/cla002.cs/工程001/WebRoot          这个是网站根目录/工程001/WebRoot/index.aspx  网站首页
/工程001/WebRoot/news/news.aspx   这个是其中的一个页面上面的大体上是我网站的目录结构,但是我遇到一个比较奇怪的问题。我在news.asps页面上调用cla001.cs和cla002.cs里面的函数时候一切正常。但是我在index.aspx上同样的方法调用cla001.cs中的函数的时候,系统错误提示:错误 4 “cla001”并不包含“MyFunction07”的定义 D:\工程001\WebRoot\index.aspx.cs
173 30 D:\工程001\WebRoot\但是同样在index.aspx页面上调用cla002.cs里面的函数的时候却没有出现任何提示,程序正常执行。请问是怎么回事呀?我曾经尝试修改命名控件、清空.net的编辑缓存、重新定义了一个cla001.cs类,但是程序就是不能通过。望高人帮忙解答!!!

解决方案 »

  1.   

    添加了引用没有啊,就是 using MyClass001 这个类啊另外如果不存在的话,你new 一个cla001 cla=new cla001();
     cla. 看有没有智能提示MyFunction07, 如果没有那就是真的没有啊,如果有就要看下你的 MyFunction07 是不是 public 函数了
      

  2.   

    第一:类必须声明为公共类,须加上public
    第二:方法也必须加上public修饰符,否则就只能内部使用了
      

  3.   


    第二:方法也必须加上public修饰符,否则就只能内部使用了
      

  4.   

    注意命名空间问题,即一楼说的引用注意方法的修饰符号,用public还有,非插件内的类,想要公用的话,最好是放在App_Code目录内
      

  5.   

    既然news.aspx 能调用肯定不是引用的问题
      

  6.   

    你把 cla001.cs换个名字应该就好了,搞烦了懒得问为什么了?
      

  7.   

    你把 cla001.cs换个名字应该就好了,搞烦了懒得问为什么了?
      

  8.   

    果然把cla001.cs中的类名改一下就行了,这个烦人的问题总算在不知道原因的情况下解决了
    结帖子给分了