C_Sharp 板


LINE

遇到一个case 我在wrap一些API 我自己的namespace叫做 MyClass 这API在namespace Foo底下 他这namespace下有个enum 叫做 enum Test{ A, B, C}; 但要看到他必须using Foo; 问题是 我包这些API起来 我可能开一个function 类似 Set( Test param); 但使用者要看到Test 他就必须知道要using Foo; 但我觉得这样不是很友善 所以我duplicate一份enum叫做 enum eTest{A,B,C} 使用者要用我 所以一定要using MyClass; Set改为 Set( eTest param) 但是我这样duplicate一份总觉得怪怪 所以我想说试试看可不可以间接的让使用者看到using Foo; 所以我把我code改成 namespace MyClass { using Foo; public class MyClass{ public void Set( Test param){............} } } 可是我测了~~~使用者还是认不到 Foo底下的东西 让我很困扰 我到底是该duplicate一个enum 还是请使用者自行需要知道要写using Foo; 我试着google了很久....可是找不到@@ 还是说做不到呢 谢谢 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.147.15.66
1F:推 Deadshot465:小弟我比较好奇的是为什麽不直接加入Foo的参考 11/25 18:48
2F:→ Deadshot465:然後使用完整的名称Foo.Test呢@@... 11/25 18:49
3F:→ Deadshot465:using只是方便省略冗长的完整名称而已不是嘛@@? 11/25 18:49
4F:→ remmurds:using到底困扰什麽? 我怎麽都不懂? 11/25 20:15
5F:→ QQ29:我想要内部帮她using後他就直接看的到Test这enum... 11/25 21:00
6F:→ QQ29:他就不用自己using namespace了 11/25 21:00
7F:→ Deadshot465:所以问题是在.....? 11/25 21:14
8F:→ remmurds:那原PO乾脆写信建议EMCA和ISO修改C#规格算了... 11/25 21:35
9F:→ Deadshot465:原po可以把问题描述得再明确清楚一点吗? 11/25 21:49
10F:→ QQ29:可能是我对using有点误解 我是有查msdn 两种用法 11/25 23:11
11F:→ QQ29:一种是 using(statement...){} 11/25 23:12
12F:→ QQ29:一种是类似C++的typedef....那一般在 cs档最上面 11/25 23:12
13F:→ QQ29:有一堆using System.xxxx;这是哪一种呢? 11/25 23:13
14F:→ QQ29:我想达到的目的是 我提供dll可是对方不用using 我用到的 11/25 23:13
15F:→ QQ29:namespace 就可以看到 内容了 11/25 23:14
16F:推 Deadshot465:我是觉得原po不要太习惯用C++去理解C#... 11/25 23:20
17F:→ Deadshot465:那样说不定有时候会反而被制约 11/25 23:21
18F:→ Deadshot465:cs档最上面的using是指使用名称空间 11/25 23:21
19F:→ Deadshot465:但那不是必要 那只是方便可以省略完整写出每个类别 11/25 23:21
20F:→ Deadshot465:冗长的完整名称 譬如说DataSet这个类别 11/25 23:22
21F:→ Deadshot465:他是位於System.Data名称空间之下 11/25 23:22
22F:→ Deadshot465:没using的前提下你必须每次都写出System.Data.DataSet 11/25 23:23
23F:→ Deadshot465:但using System.Data之後 就可以直接写DataSet 11/25 23:23
24F:→ Deadshot465:反而比起using 比较重要的是参考的加入 11/25 23:24
25F:→ Deadshot465:有些类别和名称空间 预设不会被参考 11/25 23:24
26F:→ Deadshot465:你必须手动加入参考才可使用 11/25 23:24
27F:→ Deadshot465:所以你的问题是在你的Set方法需要使用到Foo.Test 11/25 23:26
28F:→ Deadshot465:但是你希望使用者在call你的方法时不用using Foo吗? 11/25 23:27
29F:→ QQ29:对 不想让他去using 因为她不知道该using啥 11/26 00:41
30F:→ QQ29:http://tinyurl.com/2aolfgb 请问第一个using 指示词。 11/26 00:42
31F:→ QQ29:他说有两种用法 我现在是想第一种用法 using System.Text; 11/26 00:42
32F:→ QQ29:使用者不要知道要using这 他就看的到里面的东西了 11/26 00:43
33F:→ QQ29:请问做得到吗 11/26 00:43
34F:→ ssccg:使用者不会不知道该using啥吧,因为需要把Foo.dll加入参考 11/26 02:06
35F:→ ssccg:using是个directive,只对写了using的那个档案有效 11/26 02:06
36F:→ ssccg:是告诉compiler对没指定namespace又不在该namespace中的type 11/26 02:07
37F:→ ssccg:要去哪边找,而不是inline或是import那种意思 11/26 02:08
38F:→ Deadshot465:如果使用者只参考了你的组件 却没参考Foo的话 11/26 02:23
39F:→ Deadshot465:你的方法是起不了作用的 11/26 02:23
40F:→ Deadshot465:因为对使用者来说如果没参考Namespace Foo的话 11/26 02:24
41F:→ Deadshot465:Foo.Test这个enum是不存在的 自然也无法传入Set()了 11/26 02:25
42F:→ Deadshot465:不然的话就是将两者写在不同的类别档中 11/26 02:26
43F:→ Deadshot465:但位在同一个命名空间之下 11/26 02:26
44F:→ jrexz:不就是 Test => Foo.Test , using 只是可以省去打Foo 11/26 02:57
45F:→ remmurds:我好奇原PO是不是不知道VisualStudio可以浏览一个DLL底下 11/26 06:20
46F:→ remmurds:的所有命名空间和所有类别 11/26 06:21
47F:→ remmurds:把时间花在这 坦白说真的没啥意义... 11/26 06:24
48F:推 horngsh:建议楼主弄清何谓Namespace以及其真正用途. 11/26 10:23
49F:→ remmurds:同意楼上 11/26 12:32
50F:→ andymai:这就像在路上喊一声"志明"或"春娇"~结果有好几人回头一样 11/26 12:43







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:iOS站内搜寻

TOP